2017-10-14 510 views
0

Python3.5安装在我的机器上Python3.5已安装,但PIP 3点python3.6

$ python3 --version

的Python 3.5.0

然而, pip3命令指向python3.6,这意味着:

$ pip3 --version

PIP 9.0.1从/usr/local/lib/python3.6/site-packages(蟒蛇3.6)

因此,我安装带有pip3 install xxxxx所有包不能由我的python3.5解释使用。他们显然安装到python3.6,但我从未在我的机器上安装python3.6。

我能想到的唯一解决方法是使用python3 -m pip来替换我想要的pip3。这可能工作,如下图所示:

$ python3 -m PIP --version

PIP 9.0.1从/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site (python 3.5)

但它确实很愚蠢。如何将'pip3'的默认目的地改回Python 3.5?即如何使pip3从字面上为python3.5安装软件包?

+0

这不是一个编程问题,所以它不是正确的地方要问。它与您使用的操作系统以及如何将“pip3”命令链接到正确路径有关。当你知道如何去做,你可能想要使用完整的pip3路径,比如/usr/local/lib/python3.5/site-packages/pip3来启动正确的pip3 – 576i

+0

找到当前的pip'哪个pip '并创建一个符号链接,参考python 3.5点。 –

回答

0

下载从pypa PIP引导脚本,然后用你的Python 3.5解释

$ wget https://bootstrap.pypa.io/get-pip.py 
$ python3 get-pip.py 

此安装它,然后将PIP安装到您的python3安装。

你甚至可能已经拥有了它,你可以仔细检查通过查看:

/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/Scripts

你可以尝试找到它与find命令
目录,然后你可以尝试备份旧点子命令,并用新的替换它:

$ PIP_3_5=$(find /Library/Frameworks/Python.framework/Versions/3.5/lib/python‌​3.5 -name pip) 
$ mv $(which pip) $(which pip)3.6 
$ alias pip=$PIP_3_5 

请记住,我没有测试这些命令,因为我在Windows上,但如果我的内存是正确的,那么应该这样做...

+0

做完之后,结果是Requirement已经是最新的了:pip in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages – Samuel

+0

所以我猜python3.5的点是已经在那了?那么我怎样才能删除python3.6,并使python3.5成为默认的? – Samuel

+0

更新了我认为应该将其设置为默认值的答案 –

2

您将需要更改环境变量。

你可以通过python交互式解释器来做到这一点,因为python有一个模块来更改环境变量。

这么火了IDLE shell并输入以下两条命令:

>>> import sys 
>>> sys.path 

您应该看到类似以下的输出:

['', 'C:\\python36', 'C:\\python36\\Lib\\idlelib', 'C:\\Python36\\python36.zip', 
'C:\\Python36\\DLLs', 'C:\\Python36\\lib', 'C:\\Python36', 'C:\\Python36\\lib\\site-packages'] 

删除阵列中的类似/Python36/lib/site-packages'的条目。

注意不要删除其他东西。尝试简单地打印索引以确保它是正确的。

一旦你完成,重新启动你的电脑。

通过检查终端上的pip版本来测试它的工作情况。

如果有效,你就完成了!但是,有时您会看到一个错误,称未找到pip3。 在这种情况下,请回到shell并(在重新导入sys之后)追加python 3.5的目录,然后追加/ lib/site-packages。

重新启动您的计算机,并测试它的工作。如果没有,你可能需要重新安装python 3.5。 我希望这个答案很有用!