VSCode中Jupyter Notebook无法识别.venv内核求助
确认虚拟环境激活有效性
打开终端执行source .venv/bin/activate,确保终端前缀显示(.venv)。接着运行which python和which ipykernel,输出路径必须指向.venv/bin目录下的对应文件,避免调用系统级Python。重新注册内核(使用清晰命名)
保持虚拟环境激活状态,执行以下命令注册内核,避免用.venv这类可能引发识别问题的名称:python -m ipykernel install --user --name=venv-kernel --display-name="Python (.venv)"--display-name是VSCode内核列表中会显示的名称,可按需自定义。指定VSCode的Python解释器
按下Ctrl+Shift+P(Mac为Cmd+Shift+P),输入Python: Select Interpreter,选择.venv目录下的Python解释器。完成后重启Notebook内核,或关闭Notebook重新打开。清理并检查内核列表
执行jupyter kernelspec list,查看已注册的内核,确认venv-kernel存在。若有无效或重复的内核条目,用jupyter kernelspec remove <无效内核名>删除后重新注册。更新VSCode扩展并排查冲突
在VSCode扩展面板中,确保Python和Jupyter扩展为最新版本。暂时禁用其他Python相关扩展(如第三方环境管理插件),重启VSCode后再尝试加载内核。手动修正内核配置(极端场景)
进入Jupyter内核配置目录(通常为~/.local/share/jupyter/kernels/),找到刚注册的venv-kernel文件夹,打开kernel.json文件,确认argv中的Python路径为虚拟环境的绝对路径,示例如下:{ "argv": [ "/你的项目路径/.venv/bin/python", "-m", "ipykernel_launcher", "-f", "{connection_file}" ], "display_name": "Python (.venv)", "language": "python" }修改后保存,重启VSCode即可。
内容的提问来源于stack exchange,提问作者Nadezhda

