anaconda创建多个python环境并在notebook中切

2022-04-20  本文已影响0人  马尔代夫Maldives

利用anaconda 给不同的项目创建不同的python环境非常重要,比如有的第三方包需要python2.7,有的包需要python3.6,这就只能建立两个不同的python环境了。
在安装完anaconda后会生成一个默认的“base”环境,如果用户不手动建立新的python环境并启用,则默认所有的编程工作都在该base环境下进行。如果这个环境崩溃了,那么所有的工作都将不能继续!
因此最好在安装完anaconda后手动新建一个python环境,所有的新包都安装在新环境下,base环境则不去动他。

注意:安装完anaconda后,每次打开终端都会自动进入到默认的base环境中,可以使用“conda deactivate”退出,也可以关闭自动打开base环境,命令如下:

conda config --set auto_activate_base false

1、新环境的创建、激活、删除

打开anaconda prompt,并执行如下代码:

查看已经存在的所有环境:
conda info -e
或
conda env list

上述语句都将列出所有已经存在的环境。

创建一个新环境:
conda create -n cgx_py3.4 python=3.4
或
conda create -n cgx_py3.4 python=3.4 anaconda

上述语句新建了一个名为“cgx_py3.4”的新环境,“python=3.4”指定了python的版本。
注意:末尾不带“anaconda”时只安装了一些必须的包,并不会像安装anaconda时自动安装很多常用的包。要实现同时安装其他包,则末尾必须加上“anaconda”。用“conda list -n cgx_py3.4”查看安装的包。
新建的环境会在Anaconda navigator的Environment中体现,不需要重启navigator(如下图),注意这里我新建的环境名是“tensorflow_keras”而不是“cgx_py3.4”,后同。

新建的环境.png
删除一个环境:
conda remove -n cgx_py3.4 --all

上述语句删除了一个名为“cgx_py3.4”的环境。

激活/退出一个环境:
conda activate cgx_py3.4
conda deactivate

上述语句激活/退出了名为“cgx_py3.4”的环境。

2、在jupyter notebook中添加、切换新环境

默认情况下直接打开notebook进入的是base环境,要进入其他环境,传统的方法是先打开anaconda prompt用“conda activate cgx_py3.4”进入对应环境,再打开notebook。这种方式比较麻烦,更简单的方法是将所有的环境都纳入到notebook中,直接在notebook中选。
方法如下:

在jupyter notebook中安装‘Conda’
conda install nb_conda

上述代码在anaconda prompt (base)中执行,结果在notebook中多出了“Conda”主菜单(其功能如下图所示。此时如果再通过anaconda新建一个环境,会自动添加到列表中,不需要重新启动notebook。

注意:在完成上述步骤后,虽然“Conda”菜单下已经列出了所有环境,但并非所有环境都会在“New”中出现(只会出现图中带√的环境),必须在anaconda prompt (base)中输入 “conda activate environment_name”进入新环境中并执行 “conda install ipykernel”(ipykernel 软件包为Jupyter提供了IPython内核),此时再重启notebook,在New中就有对应的新环境了。

conda.png
在notebook主页中选择对应环境新建python项目
根据指定环境新建python项目.png
在notebook中更改已有项目的环境

主要通过项目菜单“Kernel”下的“change kernel”进行。


更改已有项目的环境.png

3、查询、安装、更新、删除对应环境下的包:

conda list #列出当前环境下的包
conda list -n cgx_py3.4 #列出指定环境下的包

conda install numpy  #在当前环境下安装包(以numpy包为例)
conda install -n cgx_py3.4 numpy #在指定环境下安装包

conda update numpy  #更新当前环境下的包
conda update -n cgx_py3.4 numpy #更新指定环境下的包

conda remove numpy  #删除当前环境下的包
conda remove -n cgx_py3.4 numpy #删除指定环境下的包

除了命令的方法当然还包括前面notebook中利用Conda菜单下的功能。

上一篇下一篇

猜你喜欢

热点阅读