求助:在Poetry Shell环境下Jupyter Notebook无法导入Python库
问题原因及解决方法
核心原因
Jupyter Notebook的内核没关联到Poetry创建的虚拟环境,它默认调用系统全局Python或其他已存在的内核,而非你当前Poetry环境的Python解释器,所以找不到安装在Poetry环境里的库。
解决步骤
在Poetry环境中安装ipykernel
激活poetry shell后执行:poetry add ipykernel --dev(加
--dev是因为ipkernel属于开发工具,无需打包到生产依赖)将Poetry环境注册为Jupyter内核
保持在激活的Poetry shell中,执行命令(把your-env-name换成Poetry环境名或自定义名称):python -m ipykernel install --user --name=your-env-name --display-name="Python (Poetry)"该命令会把当前Poetry环境的Python解释器添加到Jupyter的内核列表中。
重启Jupyter并切换内核
关闭当前Jupyter Notebook,在Poetry shell中重新启动:jupyter notebook打开Notebook后,点击顶部菜单栏「Kernel」→「Change Kernel」,选择刚才注册的「Python (Poetry)」内核,之后导入库即可正常运行。
额外排查点
- 若问题仍存在,检查Jupyter启动时的终端输出,确认它使用的Python路径是否为Poetry环境的路径(Poetry环境路径通常在
~/.cache/pypoetry/virtualenvs/或项目目录下的.venv文件夹中)。 - 确保你是在激活Poetry shell之后启动的Jupyter,而非直接用系统命令启动。
内容的提问来源于stack exchange,提问作者hiu
相关产品推荐
相关产品推荐

