虽然如今python2已经停止更新,但作为重要的python发行版,考虑到更新的成本,众多常用软件仍然再继续使用python2,比如ArcGIS以及一些专用软件等。因此有时候不得不遇到python2和python3装在同一台计算机上的情况,那么作为python重要的包管理软件pip2和pip3的共存问题也随之而来。
其实这个问题并非每次都会遇到,但是也不能保证每次都遇不到。本文就是在遇到这个问题的时候搜集自网络的,简要介绍了解决pip2、pip3共存的方案。
以下配置以windows系统为例
python2、python3安装及环境变量配置
此处,假定python2、python3均已安装
¶配置环境变量
安装python2、python3后添加如下路径至系统变量path(以python2.7和python3.6为例):
1 | C:\Program Files\Python36 |
¶修改python可执行文件名
找到python2和python3的安装目录,修改python2.7.9和python3.6.8中python.exe和pythonw.exe的名称为python2.exe、pythonw2.exe和python3.exe、pythonw3.exe
¶测试运行
然后再cmd命令行输入python2
、python3
测试运行情况,确保python2和python3可正常启动
pip2和pip3设置
Python 安装包需要用到包管理工具pip,但是当同时安装python2和python3的时候,pip只是其中一个版本,以下将提供一个修改方式,即重新安装两个版本的pip,使得两个python版本的pip能够共存。
在DOS命令框输入命令
1 | python3 -m pip install --upgrade pip --force-reinstall |
显示重新安装成功。
或者在DOS命令框输入命令
1 | python2 -m pip install --upgrade pip --force-reinstall |
显示重新安装成功。
现在可以通过pip2 -V
和 pip3 -V
查看两个版本的pip信息,以后只需运行pip2 install XXX
和pip3 install XXX
即可安装各自的python包
至此,pip2和pip3 修改成功。
pip故障无法运行时
今天遇到pip运行报错的问题
Python报错:
1 | AttributeError: module 'importlib._bootstrap' has no attribute 'SourceFileLoader |
解决方案:
cmd运行以下命令之一
1 | python2 -m ensurepip --upgrade |
可以重新安装pip
按说以上两条安装命令会发生冲突,同时只能存在一个pip版本,可按照上文中pip2、pip3共存方案进行共存设置,即运行
1 | python3 -m pip install --upgrade pip --force-reinstall |
或者
1 | python2 -m pip install --upgrade pip --force-reinstall |
可同时安装更新python2及python3可用的pip版本。