Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何分发具有正确模块的python程序?_Python_Github_Open Source_Software Distribution - Fatal编程技术网

如何分发具有正确模块的python程序?

如何分发具有正确模块的python程序?,python,github,open-source,software-distribution,Python,Github,Open Source,Software Distribution,我想和大家分享一个我正在编写的程序。有没有办法把它和它使用的模块一起分发? 理想情况下,它将从主文件中提取所有必要的模块,并创建一个包含从源代码运行所需的所有内容的新目录。 我不想编译,希望能够在.zip文件或gitub上简单地共享源代码和模块 谢谢 创建一个requirements.txt文件,列出项目所需的所有Python库 理想情况下,您的项目应该有一个virtualenv,并且项目的所有依赖项都安装在其中——在这种情况下,您可以简单地使用pip freeze>requirements.t

我想和大家分享一个我正在编写的程序。有没有办法把它和它使用的模块一起分发? 理想情况下,它将从主文件中提取所有必要的模块,并创建一个包含从源代码运行所需的所有内容的新目录。 我不想编译,希望能够在.zip文件或gitub上简单地共享源代码和模块


谢谢

创建一个
requirements.txt
文件,列出项目所需的所有Python库

理想情况下,您的项目应该有一个virtualenv,并且项目的所有依赖项都安装在其中——在这种情况下,您可以简单地使用
pip freeze>requirements.txt
来(重新)生成它

然后,有人可以使用
pip install-r requirements.txt
轻松地从PyPI中提取依赖项


或者你可以更进一步,制作一个真正的Python包?通过这种方式,使用单个
pip install
命令直接从github安装它将非常容易。或者你甚至可以把它分享给PyPI

有很多关于Python打包的文章,您可能需要阅读,例如:


这里有一个指向另一个SO线程的链接,展示了如何使用模块创建和构造文件夹,然后将文件夹压缩并共享

好的,我有点理解上面的内容。我是否可以简单地将一个lib文件夹添加到我的项目中,并将我正在使用的模块复制到那里,然后将全部内容上传到github?我希望人们能够从Github下载包含所有内容的.zip。关于pip安装程序,我是否需要做一些特殊的事情来让他们托管我的包?他们需要批准吗?谢谢你的帮助!!您不应该复制外部LIB-如果有人已经有了副本怎么办?如果它被错误修正更新了怎么办?这就是为什么我们有依赖跟踪。制作一个普通的Python包,
setuptools
甚至可以为您生成一个Win32安装程序。好的,我将探索制作一个包。我说的对吗?如果我使用setuptools,它将创建一个init.py,指向我的程序需要运行的依赖项?您可以通过编写一个名为
setup.py
的脚本并在
install_requires
下指定依赖项来配置setuptools;Setuptools将为您的用户下载并安装它们。请阅读,非常感谢您的帮助!我正在将这条线标记为已解决。