【发布时间】:2014-02-25 03:09:47
【问题描述】:
我想分享一个我正在编写的程序。有没有办法将它与它使用的模块一起分发? 理想情况下,将从主文件中提取所有必要的模块并创建一个新目录,其中包含从源代码运行所需的所有内容。 我不想编译,希望能够简单地在 .zip 文件或 gitub 上共享源代码和模块。
谢谢!
【问题讨论】:
标签: python github open-source software-distribution
我想分享一个我正在编写的程序。有没有办法将它与它使用的模块一起分发? 理想情况下,将从主文件中提取所有必要的模块并创建一个新目录,其中包含从源代码运行所需的所有内容。 我不想编译,希望能够简单地在 .zip 文件或 gitub 上共享源代码和模块。
谢谢!
【问题讨论】:
标签: python github open-source software-distribution
创建一个requirements.txt 文件,其中将列出您的项目所需的所有 Python 库。
理想情况下,您应该为您的项目安装一个 virtualenv,并在其中安装项目的所有依赖项 - 在这种情况下,您可以简单地使用 pip freeze > requirements.txt 来(重新)生成它。
然后有人可以轻松地使用 pip install -r requirements.txt 从 PyPI 中提取依赖项。
http://www.pip-installer.org/en/latest/cookbook.html
或者你可以更进一步,制作一个真正的 Python 包?这样就可以很容易地使用单个pip install 命令直接从 github 安装它。或者你甚至可以将它分享给 PyPI。
有很多关于 Python 打包的文章您可能想阅读,例如:
【讨论】:
setuptools甚至可以为你生成一个Win32安装程序
setup.py 的脚本并在install_requires 下指定依赖项来配置setuptools; Setuptools 将为您的用户下载并安装它们。请阅读Hitchhiker's guide to Python packaging
这是另一个 SO 线程的链接,该线程显示了如何使用模块创建和构建文件夹,然后压缩文件夹并共享它; Python: sharing common code among a family of scripts
【讨论】: