是否有一种方法可以将python软件包(即python文件的文件夹)转换为可以复制并直接导入python脚本的单个文件,而无需运行任何其他shell命令?我知道可以压缩所有文件,然后在需要时从python解压缩它们,但是我希望有一个更优雅的解决方案。
答案 0 :(得分:1)
目前尚不清楚问题是什么。我可以用两种方式解释它。
如果您希望以更有条理的方式管理许多模块中的符号:
您需要将__init__.py
文件放在目录中并将其打包。您可以在其中定义包的符号,并创建优美的import packagename
行为。有关packages的详细信息。
如果您希望使代码可移植到其他环境:
无论哪种方式,都需要在任何运行环境中均可访问该软件包。这意味着它要么需要安装在python环境中(可能使用pip
),然后复制到以下位置位于相对于正在运行的代码的子目录中,或者位于PYTHONPATH
环境变量中列出的目录中。
打包代码并使其可移植的最直接方法是使用setuptools
创建可安装到任何python环境中的可移植程序包。 Packaging Projects的手册页详细介绍了如何建立软件包存档,以及可选地上传到PyPi进行公共分发。如果是供私人使用,则可以将生成的存档传递给他人,而无需将其上传到公共存储库。