如何为Python项目固定Python版本?需限制≥3.9且排除3.10
传递Python版本要求的标准方式
有几种标准方式可以明确传递Python版本要求,适配你的场景(要求≥3.9,排除3.10):
1. 在requirements.txt中直接声明
可以在依赖文件里添加Python版本约束,格式如下:
# 要求Python版本不低于3.9,且排除3.10 python_version >= "3.9" python_version != "3.10"
注意:部分旧版本pip可能不识别该约束,推荐搭配更现代的工具使用。
2. 使用pyproject.toml(推荐方案)
这是PEP规范定义的现代项目配置标准,被pip、Poetry、Setuptools等主流工具支持,写法清晰且兼容性好:
[project] requires-python = ">=3.9, !=3.10.*"
这个约束会在安装依赖时被工具自动检查,不符合版本要求会直接报错。
3. 在setup.py或setup.cfg中配置
如果项目仍使用传统的setuptools配置:
- 在
setup.py中:
from setuptools import setup setup( # 其他项目配置 python_requires=">=3.9, !=3.10.*", )
- 在
setup.cfg中:
[metadata] python_requires = >=3.9, !=3.10.*
4. 文档中明确标注
在项目的README.md里直接说明版本要求,比如:
本项目仅支持Python 3.9、3.11及更高版本,不兼容Python 3.10(与部分包存在未知兼容性问题)
这种方式能让开发者在接触项目初期就明确版本限制,避免不必要的调试。
内容的提问来源于stack exchange,提问作者MartinKoch
相关产品推荐
相关产品推荐

