Ubuntu16.04下如何将pip指向Python2.7?
解决Ubuntu 16.04中pip指向Python2.7的问题
你遇到的情况很常见:升级pip到v10版本后,pip和pip3都绑定到了Python3.5,导致无法用pip命令为Python2.7安装依赖。这是因为pip 10+在升级时如果没有明确指定Python版本,会默认覆盖系统中原有pip的关联指向。下面是几种靠谱的解决办法:
方法一:重新安装Python2.7对应的pip(持久化解决方案)
这是最直接的修复方式,能让pip命令永久关联到Python2.7:
- 先下载适配Python2.7的
get-pip脚本:
curl https://bootstrap.pypa.io/pip/2.7/get-pip.py --output get-pip.py
- 使用系统默认的Python2.7解释器(即
/usr/bin/python)运行脚本,添加sudo确保安装到系统级路径:
sudo python get-pip.py
- 安装完成后验证结果:
pip -V
此时应该显示类似 pip 10.0.0 from /usr/local/lib/python2.7/site-packages/pip (python 2.7) 的输出,说明pip已成功指向Python2.7。
方法二:临时指定Python2.7的pip(无需修改系统配置)
如果不想改动系统的pip关联,可以直接通过Python解释器调用pip模块,这样无论pip命令指向哪个版本,都会使用Python2.7对应的pip:
python -m pip install <你的包名>
例如安装requests包:
python -m pip install requests
方法三:设置别名(区分Python2/3的pip)
如果希望同时保留pip指向Python3、用pip2明确指向Python2.7的pip,可以在个人bash配置中添加别名:
- 打开bash配置文件:
nano ~/.bashrc
- 在文件末尾添加一行:
alias pip2='python -m pip'
- 让配置立即生效:
source ~/.bashrc
之后你就可以用pip2 install <包名>为Python2.7安装依赖,用pip3为Python3.5安装。
注意:方法一中使用
sudo安装的是系统级pip,所有用户都能使用;如果只想为当前用户安装,去掉sudo即可,此时pip会安装到~/.local/lib/python2.7/site-packages,需要确保~/.local/bin在你的环境变量PATH中。
内容的提问来源于stack exchange,提问作者user6453877
相关产品推荐
相关产品推荐

