python设置工具的用途是什么?

python设置工具的用途是什么?,python,setuptools,Python,Setuptools,python中setuptools的用途是什么?如果我没有setuptools或从不升级setuptools怎么办 我阅读了此文档,但无法得到答案。 Setuptools是一个包开发过程库,旨在 通过增强Python标准促进打包Python项目 库distutils(分发实用程序) 本质上,如果您正在创建和分发python包,它将非常有用。setuptools是一个由许多其他包使用的包,用于从源代码(以及与之相关的任务)处理安装 它通常广泛用于非纯Python包,这些包在可用之前需要一些编译

python中setuptools的用途是什么?如果我没有setuptools或从不升级setuptools怎么办

我阅读了此文档,但无法得到答案。

Setuptools是一个包开发过程库,旨在 通过增强Python标准促进打包Python项目 库distutils(分发实用程序)


本质上,如果您正在创建和分发python包,它将非常有用。

setuptools
是一个由许多其他包使用的包,用于从源代码(以及与之相关的任务)处理安装

它通常广泛用于非纯Python包,这些包在可用之前需要一些编译/安装步骤(想想包含用C编写的扩展的包)<代码>设置工具排除了此过程中使用的一些最常见的操作(使用与当前Python安装兼容的选项编译C文件,如果需要,运行Cython,为setup.py文件提供一些模糊一致的命令/选项集,…)以及提供Python包开发过程中使用的一些工具

与distutils、distutils2(?)和其他一些我从未真正理解的软件包设置工具有某种重叠;老实说,它是Python生态系统中相当混乱的一部分

关键是,如果你:

  • 不要开发Python包
  • 只安装二进制或纯Python软件包
  • 只通过高级安装程序(pip、easy_install、您发行版的软件包管理器)安装软件包,您真的很幸运
您通常不需要担心setuptools,或者它不是真正需要的,或者高级安装程序会确保您安装了足够新的版本;在最后一种情况下,只要操作足够简单,一般不会失败


否则,不幸的是,您将花费一些有趣的时间试图了解setup.py和编译器之间到底是谁在添加导致编译失败的命令行开关,或者破坏包含路径,或者期望库位于不同的路径,或者错误检测编译器,或者尝试将东西安装到错误的路径或上述任何组合中

一般来说,它们有助于在它们之间制造混乱,易于安装,distutils,distutils2,pip,wheels和其他一些我现在忘记了的东西。有时,他们也会产生一些有趣的编译器错误,让你开心,尽管最好是在他们向pth文件中添加内容,并在你背后螺旋搜索路径时。