我的机器上安装了Python3.5
$ python3 --version
Python 3.5.0
但是,pip3命令指向python3.6,这意味着:
$ pip3 --version
来自/usr/local/lib/python3.6/site-packages(python 3.6)的pip 9.0.1
因此,我使用pip3 install xxxxx
安装的所有软件包都不能被我的python3.5解释器使用。它们显然安装在python3.6上,但我从未在我的机器上安装过python3.6。
我能想到的唯一的解决方法是使用python3 -m pip
来替换我想要的pip3
。这可能如下所示:
$ python3 -m pip --version
9.0L来自/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages(python 3.5)
但这真的很愚蠢。如何更改' pip3'的默认目的地回到Python 3.5?即如何使pip3逐字安装python3.5的包?
答案 0 :(得分:2)
您需要更改环境变量。
你可以通过python交互式解释器来实现,因为python有一个模块来改变环境变量。
然后启动IDLE shell并输入以下两个命令:
>>> import sys
>>> sys.path
您应该看到类似于以下内容的输出(这是来自Windows计算机):
['', 'C:\\python36', 'C:\\python36\\Lib\\idlelib', 'C:\\Python36\\python36.zip',
'C:\\Python36\\DLLs', 'C:\\Python36\\lib', 'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
删除类似于{/ 1}}的条目,对于Linux / Mac OS X用户,或对于Windows用户,'/Python36/lib/site-packages'
。
非常小心不要删除任何其他内容。尝试简单地打印索引以确保它是正确的。
完成此步骤后,请重新启动计算机以确保进行更改。
通过检查终端或命令提示符上的pip版本来测试它是否有效。
如果有效,你就完成了!但是,有些人可能会看到一个错误,说找不到pip3。
在这种情况下,请返回shell并(在重新导入sys之后)追加python 3.5的目录,然后附加'C:\\Python36\\lib\\site-packages'
。
重新启动计算机并测试它是否有效。如果没有,您可能需要重新安装python 3.5才能使其正常工作。但是,如果您正确地执行了非常罕见的步骤。
我希望这个答案很有用!
答案 1 :(得分:0)
从pypa下载pip的bootstrap脚本,然后使用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命令并用新的命令替换它:
$ PIP_3_5=$(find /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5 -name pip)
$ mv $(which pip) $(which pip)3.6
$ alias pip=$PIP_3_5
请记住,我还没有像在Windows上那样测试这些命令,但如果我的记忆正确,那么应该这样做......