为什么setup.py保留在我的分发包中?

时间:2013-03-04 19:26:26

标签: python distutils

我对Python有些新手,甚至更新于distutils。

我想为我办公室中的其他用户创建我的程序分发,所以我使用了distutils.core中的setup。我设置了我的目录结构,创建了manifest.in文件和setup.py文件。一切似乎按计划进行。结果是我有一个包含我想要的目录结构的.zip文件。

.maip文件中没有包含maifest文件(我假设只有distutils需要它),但setup.py文件仍保留在.zip文件中。这是为什么?最终用户需要setup.py吗?

谢谢,

-RS

1 个答案:

答案 0 :(得分:2)

在正常情况下,用户可以通过运行python setup.py install或有效执行相同操作的内容(例如pip install foo)来安装您的应用。

当然,有些情况下他们不需要setup.py - 例如,因为他们正在安装预先打包的二进制鸡蛋或Windows安装程序或其他任何东西 - 但大多数软件包必须适用于正常情况。因此,默认的打包命令包含它。在文档中,Specifying the files to distribute说:

  

如果您没有提供明确的文件列表(或有关如何生成文件的说明),则sdist命令会将最小的默认设置放入源分发中:

     

... setup.py(或者您称之为设置脚本的任何内容)......