jupyter与conda虚拟环境的链接问题以及相关配置

问题描述:

使用命令:
conda create -n env_name python=ver

创建的虚拟环境,能用命令:
conda info --envs
看到,但启动jupyter notebook后,在new的下拉菜单中却找不到,在文件打开后的编辑界面的的kernel-change kernel菜单里也找不到。

解决方法:

1、首先在安装有jupyter notebook的kernel环境(真实环境)中安装nb_conda_kernels(如果已经安装,则跳过此步),使用命令
conda install nb_conda_kernels
nb_conda_kernels可以搜索anaconda下的所有ipython内核

2、对于一个已经存在的虚拟conda环境env_name,使用
conda activate env_name
切换到虚拟环境下,
并确认是否安装了ipykernel这个包,如果没有则运行。
注意,安装的ipykernel不能高于root conda的ipykernel,否则可能出错。如果root conda的ipykernel版本较低,则建议在虚拟环境中安装相应低版本ipykernel。不建议单独更新root conda的ipykernel,可能会引起root中的包相互兼容的问题。
切换到虚拟环境后,执行:
conda install -n env_name ipykernel=版本号
安装ipykernel,然后,在虚拟环境下输入一下命令:
python -m ipykernel install --user --name your_virtual_env_name --display-name "your_display_name" 

#ps: python3.8虚拟环境下运行这行命令没问题,但2.7虚拟环境下会报错,如果安装ipykernel时不用conda install ,而是改成pip -m install就没问题,ipykernel官方文档写的安装方式也是后者。不知道conda安装方式为什么会产生这种错误

完成虚拟环境内核和jupyter之间的链接配置。
查看/删除jupyter与内核的链接配置:

完成了虚拟环境与jupyter之间的链接配置后,可以进行以下查看/删除操作:

查看jupyter和虚拟环境内核的链接列表以及配置储存位置:
jupyter kernelspec list

扫描二维码关注公众号,回复: 12809695 查看本文章

删除jupyter和内核的链接:
jupyter kernelspec remove 你的虚拟环境内核名字
注:如要进一步删除虚拟环境,还要运行:
conda remove -n 你的虚拟环境名字 --all

参考链接:
https://ipython.readthedocs.io/en/stable/install/kernel_install.html
https://jupyter-client.readthedocs.io/en/latest/kernels.html#kernelspecs
https://stackoverflow.com/questions/39604271/conda-environments-not-showing-up-in-jupyter-notebook
https://stackoverflow.com/questions/42635310/remove-kernel-on-jupyter-notebook#:~:text=Also%2C%20you%20can%20delete%20a%20kernel%20with%20jupyter,Remove%20one%20or%20more%20Jupyter%20kernelspecs%20by%20name.
https://blog.csdn.net/weixin_44135282/article/details/90704266

猜你喜欢

转载自blog.csdn.net/yocencyy/article/details/103403933