如何在Jupyter笔记本上切换新笔记本的环境?

时间:2017-11-08 23:11:26

标签: python anaconda jupyter-notebook jupyter conda

我有一个各种环境的实例,有些笔记本电脑兼容不同的环境,例如: notebook1适用于MXNet,notebook2适用于Tensorflow。

当我从notebook1移到notebook2时,如何跳转到新环境? 我尝试过这样做,但这与Jupyter笔记本电脑没什么关系吗?有什么建议吗?

所以我需要从conda环境中做到这一点,但看起来像jupyter笔记本UI并不尊重(调用正确的激活功能)来设置路径。

5 个答案:

答案 0 :(得分:7)

您可以使用nb_conda_kernels包,它为每个conda环境提供单独的jupyter内核,以及处理其设置的相应代码。这使得切换conda环境像切换jupyter内核一样简单(例如从内核菜单),我觉得非常方便。你可以使用

从conda-forge频道获取它
conda install -c conda-forge nb_conda_kernels

答案 1 :(得分:0)

当您在环境中启动jupyter笔记本时,它只能访问该特定环境中安装的模块。如果您需要两个不同笔记本的特定环境,则需要分别在两个环境中启动一个jupyter笔记本。

如果您使用的是anaconda,您可以在终端中执行以下操作:

source activate MXNET
jupyter notebook

然后在第二个终端:

 source activate Tensorflow
 jupyter notebook

答案 2 :(得分:0)

除了这个软件包,我认为还需要使用以下配置更改〜/ .jupyter / jupyter_notebook_config.py文件

c.NotebookApp.kernel_spec_manager_class = 'environment_kernels.EnvironmentKernelSpecManager'

答案 3 :(得分:0)

我真的不知道内核 conda env 之间的定义和关系,但是我相信我们可以为每个 env 。

我遇到了类似的问题:我在data_cleaning.ipynb下的env_without_lgb中清除数据。但是,我在lightgbm下安装了env_lightgbm。因此,我想将内核/环境env_without_lgb切换到env_lightgbm,我们可以使用Kernel -> Change Kernel

enter image description here

如果没有所需的内核,请根据this guide在正确的env下创建一个内核。对我来说,一开始我只有一个Pure Python 3 kernelR kernel,然后在env_lightgbm下创建一个内核。最后,我们可以在编辑代码时切换内核。

但是,我仍然无法弄清内核和环境之间的关系。

答案 4 :(得分:0)

按照用户@ jcb91的建议安装nb_conda_kernels软件包对我来说很有效。我确实必须将其安装在我的根(基础)环境以及想要使用它的虚拟环境中。为此,请在Anaconda提示符下(在您的基本环境中)运行以下命令:

conda install nb_conda_kernels

然后,激活您的虚拟环境(在下面的代码“ myenv”中),并在那里安装nb_conda_kernels软件包。您可以通过在Anaconda提示符下运行来完成此操作:

conda activate myenv
conda install nb_conda_kernels

您现在应该可以使用以下方法切换到其他环境:

Kernel -> Change Kernel