我对python很新,但我已经学会了基础知识,现在它是如何工作的。我一直在尝试为服务器安装一个Django框架,以便它可以托管一个网页。
基本上这里的问题是当我运行如下命令时:
python3 -V
我得到了输出
Python 3.6.1
但由于某些原因,当使用pip3时,它决定使用特定于Python 3.5的版本的pip,例如:
pip3 install Django==1.11
在“/usr/local/lib/python3.5/dist-packages”中安装Django,而不是在dist-packages目录中安装Python 3.6。
根据python文档(https://docs.python.org/3/installing/index.html?highlight=pip#work-with-multiple-versions-of-python-installed-in-parallel)我应该能够运行这个命令:
python3.6 -m pip install SomePackage
使用特定于Python 3.6的pip,但这似乎不起作用。我收到一条错误,上面写着“没有名为pip的模块”或“没有名为pip3的模块”。
我在使用Ubuntu 16.04的服务器上运行
我感谢所有的帮助,提前谢谢! :)
编辑:我已经尝试过运行
pip3 -V
给了我输出
pip 9.0.1 from /home/user/.local/lib/python3.5/site-packages (python 3.5)
从这里我可以说我在Python 3.6中使用python3没有任何问题,但是在运行pip3时它使用Python 3.5中的pip 9.0.1。还在运行
sudo apt-get install python3-pip
给我输出
0 upgraded, 0 newly installed, 0 to remove and 98 not upgraded.
答案 0 :(得分:0)
我曾经遇到过类似的问题。而且,我按照以下方式解决了这个问题:
首先在系统中安装pip3
sudo apt-get install python3-pip
创建你的virtualenv
pip3 -p python3.6 virtualenv myenv
然后在激活后在你的virtualenv中安装djangon。
pip3 install Django
您可以将django版本指定为:
pip3 install Django==1.11
答案 1 :(得分:0)
我完全忘记了这篇文章,我只是想说pip是一个非常危险的工具,应该谨慎使用,因为它会影响你的计算机/服务器的结构。我为解决我此时创造的任何混乱所做的是:
格式化服务器。
使用并仅在virtualenv中使用pip / pip3。使virtualenvs如此出色的原因在于,如果出现问题,那么它只会在virtualenv中出错。您不需要格式化您的计算机/服务器,而是可能必须删除该virtualenv并创建一个新的。
在没有virtualenv的情况下,切勿在计算机/服务器上使用pip / pip3,我发现您甚至不需要在root上安装它。使用pip的最佳方法是运行virtualenv,然后将其安装在virtualenv上。
希望这些提示有助于防止人们犯下巨大但容易避免的错误! :D