解决win平台anaconda2和anaconda3共存时冲突问题

一、python设置

  1.重命名

    anaconda2和anaconda3同时安装成功后,系统中会存在两个python.exe。此时在相应目录下打开命令窗,如Anaconda2\,运行python将执行anaconda2的python,同理在Anaconda3\,运行python将执行anaconda3的python。为了解决这个冲突问题,我们将Anaconda3\目录下的python.exe重命名为python3.exe,此时执行python3将打开anaconda3,执行python将会打开anaconda2。

 2.添加环境变量

   上面所说,每次运行python或者python3都要进入相应目录下打开命令窗,否则会报python不是内部或外部命令的错误,非常不便。因此我们需要将python和python3的路径告知系统,以便我们输入python或者python3时,系统能够正确的找到应该运行的程序,这也就是环境变量的作用。

打开环境变量的顺序:右键我的电脑->属性->高级系统设置->环境变量->PATH

依次将Anaconda2,Anaconda2\Scripts,Anaconda3,Anaconda3\Scripts添加进系统的环境变量。

二、解决pip冲突

 如上面的python冲突一样, 同时安装anaconda2和anaconda3后,系统中会存在两个pip.exe。我们执行pip命令时系统可能会执行和我们预期不一样的pip(和Anaconda2\Scripts,Anaconda3\Scripts在环境变量中的顺序有关)。为了明确我们执行的pip属于哪一个,可以通过pip -V命令查看。如下所示,可以根据显示的路径判断我们执行的是哪一个版本的pip。

根据上面修改python为python3的思路,我们自然想到可以将scripts目录下的pip.exe修改为pip3.exe,这样就可以解决冲突。但是经过笔者测试,win平台下直接修改是不可以的,原因是pip.exe的名称被多个脚本当成了参数(吐槽一下,这种耦合方式真是蛋疼),因此下面提供一个简单粗暴的解决方法,重装anaconda3的pip。新版本的pip会默认生成pip3命令滴。

pip设置

以下将提供一个修改方式,即重新安装Anaconda3的pip,使得两个版本pip能够共存。

Anaconda2:

Anaconda2 Scripts中的pip.exe不用修改,可以删除pip2.exe和对应的pip2.7.exe(也可以不删除)

Anaconda3:(划重点)重装pip的命令

 python3 -m pip install --upgrade pip --force-reinstall

Anaconda3\ Scripts中的pip.exe建议删除


三、结果

经过上面的处理之后,我们将会有python,python3,pip,pip3四个命令,互不冲突。

想用python2就执行python,想用python3就执行python3.

箱装python2版本的库就用pip,想安装python3版本的库就用pip3

你可能感兴趣的:(装机环境问题)