Pip不允许我安装django 2.0.7。当我执行sudo -H pip install Django==2.0.7
时说:
Could not find a version that satisfies the requirement Django==2.0.7 (from versions: 1.1.3, 1.1.4, 1.2, 1.2.1, 1.2.2, 1.2.3, 1.2.4, 1.2.5, 1.2.6, 1.2.7, 1.3, 1.3.1, 1.3.2, 1.3.3, 1.3.4, 1.3.5, 1.3.6, 1.3.7, 1.4, 1.4.1, 1.4.2, 1.4.3, 1.4.4, 1.4.5, 1.4.6, 1.4.7, 1.4.8, 1.4.9, 1.4.10, 1.4.11, 1.4.12, 1.4.13, 1.4.14, 1.4.15, 1.4.16, 1.4.17, 1.4.18, 1.4.19, 1.4.20, 1.4.21, 1.4.22, 1.5, 1.5.1, 1.5.2, 1.5.3, 1.5.4, 1.5.5, 1.5.6, 1.5.7, 1.5.8, 1.5.9, 1.5.10, 1.5.11, 1.5.12, 1.6, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.6.6, 1.6.7, 1.6.8, 1.6.9, 1.6.10, 1.6.11, 1.7, 1.7.1, 1.7.2, 1.7.3, 1.7.4, 1.7.5, 1.7.6, 1.7.7, 1.7.8, 1.7.9, 1.7.10, 1.7.11, 1.8a1, 1.8b1, 1.8b2, 1.8rc1, 1.8, 1.8.1, 1.8.2, 1.8.3, 1.8.4, 1.8.5, 1.8.6, 1.8.7, 1.8.8, 1.8.9, 1.8.10, 1.8.11, 1.8.12, 1.8.13, 1.8.14, 1.8.15, 1.8.16, 1.8.17, 1.8.18, 1.8.19, 1.9a1, 1.9b1, 1.9rc1, 1.9rc2, 1.9, 1.9.1, 1.9.2, 1.9.3, 1.9.4, 1.9.5, 1.9.6, 1.9.7, 1.9.8, 1.9.9, 1.9.10, 1.9.11, 1.9.12, 1.9.13, 1.10a1, 1.10b1, 1.10rc1, 1.10, 1.10.1, 1.10.2, 1.10.3, 1.10.4, 1.10.5, 1.10.6, 1.10.7, 1.10.8, 1.11a1, 1.11b1, 1.11rc1, 1.11, 1.11.1, 1.11.2, 1.11.3, 1.11.4, 1.11.5, 1.11.6, 1.11.7, 1.11.8, 1.11.9, 1.11.10, 1.11.11, 1.11.12, 1.11.13, 1.11.14)
No matching distribution found for Django==2.0.7
如上所述,它可以找到的最新版本是版本1.11.14
。通常,我可以下载该文件,但它与Python 3.7(我拥有的版本)不兼容。我还进行了检查,以确保将pip
更新到最新版本(pip 10.0.1
)。
答案 0 :(得分:5)
Mac和Linux(以及类似的系统)都包含默认安装(通常为Python 2.7)。可以通过终端中的python
进行访问。
pip
(如果已安装)也将用于Python 2.7(或系统上的任何版本)。
运行sudo -H pip install Django==2.0.7
时,它指向2.7安装(或等效安装)。
您可以通过which pip
命令对此进行测试,该命令将在安装路径中显示。
如另一个答案中所述,Django失去了对版本1.11.14
的2.7的支持,因此您无法安装版本2 Django,因为它不支持Python 2(这是您的错误)。
现在要解决该问题:
要安装Django,您只需要告诉终端使用哪个解释器即可。如前所述,您可以使用pip37
或我更喜欢使用:
python37 -m pip install Django
仅仅是因为我一直在使用python37
命令,所以我知道它可以工作,因此可以安装到正确的位置。
请注意,由于您正在安装Django,因此您可能应该使用单独的环境来提高安全性(venv或virtualenv)。
The sudo
should not be used only as an absolute last resort(如abccd所述),因为它可能会破坏您的系统(我在虚拟安装中已多次这样做,因此,如果可能的话,您一定要避免这样做),再次使用虚拟环境将确保您不需要sudo
命令,因为您没有在根字典中进行安装。
答案 1 :(得分:3)
正如Simon在评论中提到的那样:您的sudo -H pip
正在为Python 2.7安装,这说明了为什么自Django 2.x放弃对Python 2.7的支持以来,Django的最新版本是1.11.14。
您将需要使用Python 3.7的pip
,运行以下任一操作:
pip3 install --user django
python37 install --user django
python3 install --user django
pip37 install --user django
答案 2 :(得分:0)
除了上述答案外,如果您使用的是虚拟环境,请确保使用Python3创建它。您可以像这样明确地做到这一点:
virtualenv -p C:\Python36\python3.exe VE_Project
激活env。现在,如果您执行“ pip install Django” ,它将安装最新的2.x系列。