创建Python模块时,您可以使用install_requires
列表指定模块的依赖性。
让我们看一下这个基本示例。
setup(name='some_module',
version='0.0.1',
packages=find_packages(),
install_requires=[
'requests==2.21.0'
])
我打包了模块python3 setup.py sdist
并将其上传到打包存储库中。
但是当我去安装pip3 install some_module==0.0.1
时,它将在我的python3 requests==2.21.0
中全局安装site-packages/
。
对于我的问题,我如何获得与npm类似的功能,使用嵌套的node_modules/
,其中我的Python模块将拥有其 own site-packages/
,并将引用其本地版本的requests
,而不是覆盖我的全局版本。
谢谢!
答案 0 :(得分:0)
我会考虑使用PyInstaller来完成此任务!
直接来自Pyinstaller的文档:
PyInstaller 将Python应用程序及其所有依赖项捆绑到一个程序包中。用户无需安装Python解释器或任何模块即可运行打包的应用程序。 PyInstaller支持Python 2.7和Python 3.4+,并正确捆绑了主要的Python软件包,例如numpy,PyQt,Django,wxPython等。
您可以通过简单的pip安装来安装它:
pip install PyInstaller
有关更详细的教程,请查看此link
希望有帮助!