该如何将 Python 模块封装到一个文件中?


通常,你无法将 Python 模块封装到一个文件中。这样做会破坏 Python 所使用的模块搜索方法(文件和目录)。如果您无法在机器上安装模块(因为没有足够的权限),则可以使用虚拟环境或将模块文件保存在另一个目录中,并使用以下代码允许 Python 搜索提供模块的给定模块

>>> import os, sys
>>> file_path = 'AdditionalModules/'
>>> sys.path.append(os.path.dirname(file_path))
>>> # Now python also searches AdditionalModules folder for importing modules as we have set it on the PYTHONPATH.

您还可使用虚拟环境来创建隔离的本地 Python 环境。所解决的基本问题是依赖项和版本,以及间接权限。设想一下,您有一个需要 LibFoo 1 版本的应用程序,而另一个应用程序需要 2 版本。您如何使用这两个应用程序?如果您将所有内容安装到/usr/lib/python2.7/site-packages 中(或您平台的标准位置),则很容易意外升级到不应该升级的应用程序。在我们的用例中,我们也可以使用此功能,因为我们没有在机器上安装包的权限。有关虚拟环境的更多信息,请阅读文档:https://virtualenv.pypa.io/en/stable/

更新于: 01-Oct-2019

628 浏览量

开启您的 职业

通过完成课程获得认证

开始
广告