如何使用最小和最大版本范围来安装软件包?

我想知道是否有任何方法可以告诉pip,特别是在需求文件中,安装包含最低版本( pip install package>=0.2 )和最高版本(永远不会安装)的包(理论api: pip install package<0.3 )。

我问,因为我正在使用一个积极发展的第三方库。 我希望我的点子需求文件指定它应该总是安装0.5.x分支的最新次要版本,但是我不希望点子试图安装任何更新的主要版本(比如0.6.x) API是不同的。 这很重要,因为即使0.6.x分支可用,开发人员仍然会向0.5.x分支发布补丁和错误修正,所以我不想在我的需求文件中使用静态package=0.5.9行。

有没有办法做到这一点?

你可以做:

 $ pip install "package>=0.2,<0.3" 

pip会寻找最好的匹配,假设版本至less为0.2,小于0.3。

这也适用于点子需求文件 。 在PEP 440中查看版本说明符的全部细节。