在 pip 中指定模块所需的最低 python 版本
Specifying the minimum python version required for a module in pip
有没有办法指定在 pip 中安装模块所需的最低 python 版本?
我正在尝试将包发布到 pypi。
python setup.py sdist upload -r pypi
是我正在使用的命令。但是,在 setup.py 中,无法指定 运行 这个模块需要最低 python 版本(在我的例子中是 python 3.5)。
您可以使用以下方式指定项目所需的 python 版本:
python_requires='>=3.5'
以上代码必须在setup.py
中指定,而且只有9.0.0及更高版本的pip才能识别python_requires
元数据。
另外在setup.py
中指定依赖项:
setup(
install_requires=['dependent functions,classes,etc'],
)
第一件事是记录您的包所需的最低 Python 版本。在 README 和 setup.py
:
中包含该信息
setup(
…
long_description=open('README.rst', 'rU').read(),
classifiers=[
…
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
…
],
…
)
其次,在运行时禁止在 setup.py
顶部附近某处出现错误版本:
import sys
if sys.version_info < (3, 5):
raise RuntimeError("This package requres Python 3.5+")
有没有办法指定在 pip 中安装模块所需的最低 python 版本?
我正在尝试将包发布到 pypi。
python setup.py sdist upload -r pypi
是我正在使用的命令。但是,在 setup.py 中,无法指定 运行 这个模块需要最低 python 版本(在我的例子中是 python 3.5)。
您可以使用以下方式指定项目所需的 python 版本:
python_requires='>=3.5'
以上代码必须在setup.py
中指定,而且只有9.0.0及更高版本的pip才能识别python_requires
元数据。
另外在setup.py
中指定依赖项:
setup(
install_requires=['dependent functions,classes,etc'],
)
第一件事是记录您的包所需的最低 Python 版本。在 README 和 setup.py
:
setup(
…
long_description=open('README.rst', 'rU').read(),
classifiers=[
…
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
…
],
…
)
其次,在运行时禁止在 setup.py
顶部附近某处出现错误版本:
import sys
if sys.version_info < (3, 5):
raise RuntimeError("This package requres Python 3.5+")