windows下多个python版本共存,pip使用
一、同时装了Python3和Python2,怎么区分
了解python的人都知道python有2.x版本和3.x版本,而python3.x版本不向下兼容,但是根据具体的需要,有时候要2.x和3.x共存,python共存本身没有问题,只是需要设置一些环境变量和修改一些东西来让它更容易使用。本文主要说明的是windows环境
首先当然是安装你需要的两个不同版本的python,这里我安装的是2.7和3.5的,两个版本安装顺序无所谓。
接下来就是检查环境变量,缺少的我们需要添加。先找到环境变量的位置。
在Path环境变量中检查以下4个变量(Path中的环境变量是以分号隔开的):
E:Program FilesPythonPython35-32Scripts;
E:Program FilesPythonPython35-32;
E:Program FilesPythonPython27Scripts;
E:Program FilesPythonPython27;
然后进入Python2.7安装目录找到如图内容,把python.exe重命名为python2.exe
然后进入python3.5安装目录。找到python.exe程序,把它重命名为python3.exe
最后打开命令行界面测试一下。执行python2命令会进入python2.7的交互环境,执行python3命令会进入python3.3交互环境。
二、同时装了Python3和Python2,怎么用pip?
目前国内网站经常会让大家把其中一个python.exe改个名字(嗯,我也这样讲过,在此纠正一下),这样区分开两个可执行文件的名字,但是这样做有一个重大的隐患,就是修改了名字的那个python对应的pip将无法使用。
官方的解法是什么?
事实上这个问题几年以前Python社区就给出了官方解决方案,只不过国内一直没有注意到罢了。
我们在安装Python3(>=3.3)时,Python的安装包实际上在系统中安装了一个启动器py.exe,默认放置在文件夹C:Windows下面。这个启动器允许我们指定使用Python2还是Python3来运行代码(当然前提是你已经成功安装了Python2和Python3)。
如果你有一个Python文件叫 tab.py,那么你可以这样用Python2运行它
py -2 tab.py
类似的,如果你想用Python3运行它,就这样
py -3 tab.py
去掉参数 -2/-3
每次运行都要加入参数-2/-3还是比较麻烦,所以py.exe这个启动器允许你在代码中加入说明,表明这个文件应该是由python2解释运行,还是由python3解释运行。说明的方法是在代码文件的最开始加入一行
#! python2
或者
#! python3
分别表示该代码文件使用Python2或者Python3解释运行。这样,运行的时候你的命令就可以简化为
py tab.py
使用pip
当Python2和Python3同时存在于windows上时,它们对应的pip都叫pip.exe,所以不能够直接使用 pip install 命令来安装软件包。而是要使用启动器py.exe来指定pip的版本。命令如下:
py -2 -m pip install XXXX
-2 还是表示使用 Python2,-m pip 表示运行 pip 模块,也就是运行pip命令了。如果是为Python3安装软件,那么命令类似的变成
py -3 -m pip install XXXX
本文出自 “运维笔录 美玲” 博客,请务必保留此出处http://meiling.blog.51cto.com/6220221/1863526