是的。pip手册[doc]中有一个关于“需求规范”格式的部分。这些在PEP-508 [pep]和PEP-440 [pep]中有详细介绍:比较运算符决定版本子句的类型:1. ~=:兼容的发布子句 2. ==:版本匹配子句 3. !=:版本排除子句 4. <=,>=:包含的有序比较子句 5. <,>:独占的有序比较子句 6. ===:任意相等子句。逗号(“,”)等同于逻辑与运算符:候选版本必须匹配所有给定的版本子句才能作为整体匹配该规范。在你的情况下,这意味着Django版本是1.10或更高,而不是1.11或更高(所以1.10可以,1.10.1也可以,但不包括1.11、1.11.1或2.0.1)。
setuptools
版本<45.0.0
或>=49.9.1
? - Jonathon Reinhart!= 45。*,!= 46。*,!= 47。*,!= 48。*,!= 49.1。*,!= 49.2。*,!= 49.3。*,!= 49.4。*,!= 49.5。*,!= 49.6。*,!= 49.7。*,!= 49.8。*,!= 49.9.0。*
来实现此操作。 - Willem Van Onsem49.1.1
(而不是49.9.1
)。所以我使用了这个:setuptools !=45.*, !=46.*, !=47.*, !=48.*, !=49.1.0
。谢谢! - Jonathon Reinhart