如何使用requirements.txt为不同的python 3版本指定不同的包版本

cha*_*id1 4 python pip python-3.x

假设我正在使用Python 3pip安装一个包foo。现在假设foo1.0 版本对于 Python 3.5 或更低版本运行良好,但对于 Python 3.6 或更高版本则无法正常工作。假设foo2.0 版本非常适合 Python 3.6 或更高版本。

如果 Python 解释器是 3.6 或更高版本,以及Python 解释器是 3.5 或更低版本,我如何在 my 中指定requirements.txt应安装 pip ?foo==2.0foo==1.0

小智 7

这真的很容易。解决方案是PEP 508 - Python 软件包的依赖性规范。您必须使用环境标记。这将允许您为不同的 python 版本指定不同版本的包。例如:

foo==2.0;python_version>="3.6"
foo==1.0;python_version<"3.6"
Run Code Online (Sandbox Code Playgroud)