如何访问distutils版本号?

时间:2012-06-23 01:05:11

标签: python distutils

我有一个用distutils构建的python包,我在setup函数中使用了version参数,如此(除了名称和版本之外还有其他参数):

setup(name='example_module', version='0.1.2', ...)

我可以通过调用:

example_module包中的模块中提取版本号
import pkg_resources
version = pkg_resources.require('example_module')[0].version

如何从此发行版之外的python脚本访问此版本号?

2 个答案:

答案 0 :(得分:1)

通常,版本号是包源中的常量,setup.py使用该值,然后导入包的任何人都可以读取版本字符串。

答案 1 :(得分:1)

在分发版之外的另一个python程序中提供该软件包版本的最简单方法是遵循PEP 396. http://www.python.org/dev/peps/pep-0396/

任何其他脚本都可以通过运行

来访问python包的版本
python setup.py --version

并捕获输出。我在Makefile中使用它来生成我的包的在线文档时提取版本号。

如果您的软件包包含任何命令行实用程序,请确保包含--version命令行选项。然后,任何脚本/程序都可以在安装后使用它获取您的软件包版本。