多个conda环境下,jupyter notebook出现kernel error 或者是 连接失败等的错误 (解决方案)

时间:2024-05-18 12:22:02

解决问题之前,首先需要理清 jupyter 的一些知识。
1、多个conda环境下,只需要装一个jupyter notebook,环境的切换是通过切换 kernel实现的;
2、不同环境下,都需要安装 ipykernel,conda install ipykernel
3、不同环境下,需要生成内核 kernel ,你切换到你的环境,然后 python -m ipykernel install --user --name 环境名称 --display-name "在notebook中显示的环境名"

注意:1个环境,对应2个kernel.json, 一个位于package里面,一个在share路径下面。上面 #3 生成内核实际就是生成kernel.json文件。

你可以通过 jupyter kernelspec list 来查看各个内核及其路径, 通过 jupyter kernelspec remove XXX 来删除XXX内核。

多个conda环境下,jupyter notebook出现kernel error 或者是 连接失败等的错误 (解决方案)
具体某个kernel.json文件打开如下所示。注意其 环境python路径 和 显示名字。
多个conda环境下,jupyter notebook出现kernel error 或者是 连接失败等的错误 (解决方案)当你完成这些步骤后,在你需要的环境下,运行jupyter notebook ,就可以切换kernel了,如下图。你可以发现,kernel的切换选项,与上面 jupyter kernelspec list 命令显示的环境是一致的。
多个conda环境下,jupyter notebook出现kernel error 或者是 连接失败等的错误 (解决方案)如果你的 kernel.json存在,并且 jupyter kernelspec list 也能够正常显示需要的环境,但是 jupyter notebook 不能切换内核kernel ,那么你可能需要安装插件,切换到你安装了jupyter notebook的环境下,通过 conda install nb_conda_kernels 进行安装,之后就可以切换kernel 了。