激活Conda环境后Jupyter无法使用环境内安装的包如何解决?
Conda环境Jupyter内核不匹配问题修复方案
你遇到的报错核心原因是base环境安装的Jupyter默认绑定base环境的Python内核,即使激活test环境启动Jupyter,默认内核仍然调用base环境的Python,无法识别test环境下安装的第三方包,可通过以下两种方案修复:
方案1:为test环境注册Jupyter内核(推荐,无需重复安装Jupyter)
- 激活test环境
conda activate test - 安装ipykernel依赖
conda install ipykernel - 将test环境的Python内核注册到Jupyter内核列表,命令中的
--display-name参数值对应Jupyter界面中显示的内核名称,可自定义python -m ipykernel install --user --name test --display-name "Python (test)" - 启动Jupyter Notebook后,新建笔记时选择
Python (test)内核即可;已创建的笔记可通过顶部菜单Kernel > Change Kernel切换到对应内核
方案2:在test环境内单独安装Jupyter
- 激活test环境
conda activate test - 安装Jupyter
conda install jupyter - 保持test环境为激活状态,执行
jupyter notebook启动服务,此时默认内核即为test环境的Python,可直接导入对应环境下安装的包
内核匹配验证方法
在Jupyter笔记中执行以下代码,输出路径为[你的Conda安装路径]/envs/test/bin/python(Windows系统为[你的Conda安装路径]\envs\test\python.exe)即说明内核匹配正确:
import sys print(sys.executable)
冗余内核清理(可选)
如果存在冗余的无效内核,可执行jupyter kernelspec list查看所有已注册内核,找到对应内核名称后执行以下命令删除:
jupyter kernelspec remove <内核名称>
内容的提问来源于stack exchange,提问作者eigenfoo
相关产品推荐
相关产品推荐

