我有木星/anaconda/python3.5。

我如何知道我的jupyter笔记本在哪个conda环境上运行? 如何从新的conda环境中启动jupyter ?


当前回答

在Ubuntu 20.04上,上述建议都不起作用。

例如,我激活了一个现有的环境。我发现(使用sys。我的jupyter笔记本内核运行的是默认的Anaconda python,而不是我在激活环境中安装的python。这样做的后果是,我的笔记本无法将我安装到这个特定的Anaconda环境中的包导入。

按照上面的说明(以及一系列其他url),我安装了ipykernel、nb_conda和nb_conda_kernels,并运行:python -m ipykernel——user——name myenv。

使用内核|更改内核…菜单,我选择了myenv,我在python -m ipykernel命令中指定的。

然而,系统。可执行文件显示,这并不“坚持”。

我尝试关闭并重新启动,但没有任何结果,我得到了我所选择的环境。

最后,我简单地编辑了文件内核。Json在文件夹:

~ /。local /分享/ jupyter /内核/ myenv

果然,尽管我已经执行了上面建议的所有步骤,这个JSON文件中的第一个参数仍然显示了默认的python位置:

$Anaconda/bin/python(其中$Anaconda是我安装Anaconda的位置)

我编辑了文件内核。Json和一个文本编辑器,因此它被更改为:

$Anaconda/envs/myenv/bin/python

希望我对myenv的使用被理解为您应该将其替换为您的环境的名称。

编辑这个文件后,我的Jupyter笔记本电脑开始正常工作——也就是说,它们使用了为我激活的环境指定的python,并且我能够导入安装在这个环境中的包,但不能导入基本的Anaconda环境。

显然,ipykernel、nb_conda和nb_conda_kernels这组包为jupyter配置Anaconda环境的方式有些混乱。

其他回答

因为上面的答案都不适合我,所以我在这里写下了最终在Ubuntu上解决我的问题的解决方案。我的问题是: 我做了以下步骤:

激活我的环境:conda激活MyEnv 启动jupyter笔记本:jupyter笔记本

虽然MyEnv活跃在终端中,并且在编写conda env列表时有一个asterix,但jupyter notebook是从基础环境开始的。 安装nb_conda和ipykernel也没有解决我的问题。此外,conda标签没有出现在jupyter笔记本,也点击内核或进入菜单Kernel->改变内核没有显示内核MyEnv。 解决方案是:在MyEnv环境中安装jupyter_environment_kernel:

pip install environment_kernels

之后,当启动jupyter笔记本,它开始与正确的环境。您还可以在不停止内核的情况下切换环境,方法是转到“kernel ->Change kernel”菜单并选择所需的内核。

为我解决这个问题的是,我必须运行以下命令:

-m ipykernel install——user——name myenv——display-name " python (myenv)"

问题是我打开了一个jupyter笔记本,它是用另一个conda python环境的内核制作的。从终端的输出可以看到;从conda环境的终端上运行jupyter notebook非常方便,这样您就可以很容易地看到显示了哪些错误消息。然后,很明显,笔记本试图从另一个环境运行python。

检查文件夹/文件:

C:\Users\ <用户名> \ AppData \漫游\ jupyter \内核\ < env名称> \ kernel.json

 "argv": [
  "D:\\Users\\<username..path>\\envs\\<env name>\\python.exe",
  "-m",
  "ipykernel_launcher",
  "-f",
  "{connection_file}"
 ],
 "display_name": "Python (env name)",
 "language": "python",
 "metadata": {
  "debugger": true
 }
}

所以如果有必要,你可以检查和纠正。

其次,在使用anaconda/conda时,确保您有一个健康的通道策略,并在创建新环境时执行以下命令:

conda config --add channels conda-forge
conda config --set channel_priority strict

它为我解决了这个问题,我希望它也能帮助到你。

正如在评论中提到的,需要对jupyter笔记本的conda支持来切换内核。现在似乎可以通过conda本身获得这种支持(而不是依赖于pip)。 http://docs.continuum.io/anaconda/user-guide/tasks/use-jupyter-notebook-extensions/

第二秒

除了Notebook Conda内核之外,它还带来了其他三个方便的扩展。

你也可以在Anaconda Navigator中切换环境,安装Jupiter并运行它。

要显示笔记本使用的conda env,只需在单元格中输入:

!conda info

如果你有grep,更直接的方法是:

!conda info | grep 'active env'