在单个python脚本中记录导入模块版本的最佳方法或PEP约定是什么?有时我必须使用由于模块不兼容而无法运行的旧脚本(例如,脚本是使用pandas 0.15.0和matplotlib 1.3.0编写的,现在我使用pandas 0.18.1和matplotlib 1.5.1)。例如,如果脚本的第一部分在评论中包含pandas(和其他导入模块)版本,那将是很好的,例如:
"""my_script_version = '0.0.1'
pandas_version = '0.15.0'
matplotlib_version = '1.3.0'
other_imported_module_version = 'x.y.z'
"""
或者有没有官方的方法来做到这一点?像使用一些metadatas的东西?
__version__ = '0.0.1'
__date__ = '2016-06-06'
__author__ = 'ragesz'
__pandas_version__ = '0.15.0'
__matplotlib_version__ = '1.3.0'
__other_imported_module_version__ = 'x.y.z'
谢谢!
答案 0 :(得分:2)
PEP 518最近已就您的问题被接受。
依赖关系必须存储在特定文件中 pyproject.toml
[build-system]
# Minimum requirements for the build system to execute.
requires = ["setuptools", "wheel"] # PEP 508 specifications.
PEP 508指定要求的语法。
答案 1 :(得分:1)
在脚本中添加信息的最佳方式是白名单元数据,例如:
__version__="1.0.2"
__appname__="name script"
__author__="author"
__description__="short description"
__long_description__="long description for your script"
__author_email__="author@gmail.com"