Setuptools

Setuptools是目前跟随Python安装包自带的包管理工具,可以支持从PyPI上自动下载安装包。Setuptools是一组适用于Python 2.3.5以上的发布工具,可以让程序员更方便的创建和发布Python包。

相比于Python内置的distutils,setuptools的优势在于其在包管理功能方面的增强。Setuptools可以使用一种更加透明的方法来寻找、下载和安装依赖包,并且可以在一个包的多个版本中自由切换。用户在使用setuptools创建的包时,不需要安装setuptools,只需要一个启动模块即可。

Setuptools的功能主要有以下这些:

  1. 使用EasyInstall自动查找、下载、安装和升级依赖包。
  2. 创建Python Eggs。
  3. 自动包含包目录中的所有包,而不必在setup.py中列举。
  4. 自动包含包内所有和发布有关的文件,而不需要创建一个MANIFEST.in文件。
  5. 自动生成经过包装的脚本和Windows可执行文件。
  6. 支持Pyrex,可以在setup.py中列出.pyx文件,而最终用户无需安装Pyrex。
  7. 支持上传到PyPI。
  8. 可以部署开发模式,使项目出现在sys.path中。
  9. setup()扩展distutils。
  10. setup()中简单声明脚本入口,可以创建自动发现、扩展的应用和框架。