科研或者开发过程中,我们免不了需要同时使用Python 2和Python 3。我们可以借助Anaconda(包含了很多实用库的Python发行版)优雅地同时安装不同版本的Python。由于Conda将Python看做跟其他库无异的库,理论上Conda本身就可以管理多个不同版本的Python包。
本方法适用于Windows、Linux和Mac。用本方法安装后,一条命令就可以切换两个不同版本,也并不需要像网上多篇博客说的那样安装两次Anaconda,没有任何副作用,可谓全网最优雅的方法!
去Anaconda官网下载你常用的Python版本的安装包,详细安装过程看这篇文章,此处略。
安装完后,推荐将Anaconda的源设置成国内源,之后下载包会快一点:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
Windows打开Anaconda Prompt,Linux、Mac打开终端。
Python 3下安装Python 2请输入:
conda create -n py2 python=2.7 anaconda
Python 2下安装Python 3请输入:
conda create -n py3 python=3.6 anaconda
然后经过一段时间等待,因为Anaconda要自动下载新Python使用的各种库。
下载完之后,Windows下使用activate py2
(开启Python 2)或activate py3
(开启Python 3),Linux或Mac下使用source activate py2
(开启Python 2)或source activate py3
(开启Python 3)即可进入对应的Python环境,然后输入python
即可进入对应版本的Python解释器。
Jupyter Notebook是Anaconda自带的很好用的基于网页交互式编辑器,在终端中输入jupyter notebook
即可打开。(我这边只能在base环境下运行,在新创建的py2环境下提示编码错误,应该是Python 2、3编码不同的锅,暂时未解决)
但是,即使按照前面的步骤安装了两个Python,在打开的Jupyter Notebook中仍然只有一个Python版本。可以通过以下方法添加第二个Python版本。
activate
命令(Windows)或者source activate
命令(Linux、Mac)激活另一个Python环境。输入which python
得到另一个Python环境的安装地址,复制一下。conda install --prefix=复制的地址 ipykernel
python -m ipykernel install --user
deactivate
命令(Windows)或者source deactivate
命令(Linux、Mac)回到base环境,输入jupyter notebook
,在打开的界面中,你就可以发现已经可以使用两个不同版本的Python了。全文完~