VSCode中Jupyter Notebook不显示更新后的Python内核列表问题
针对MacOS系统VSCode Jupyter内核及编辑功能异常的解决方案
一、清理残留无效内核
已删除的内核仍然显示是因为内核配置文件未完全清理,按以下步骤操作:
- 执行命令查看所有已注册内核的存储路径:
jupyter kernelspec list - 对应输出中的路径,删除不需要的内核文件夹即可,MacOS默认内核存储路径为
~/Library/Jupyter/kernels/,虚拟环境内的内核路径对应为虚拟环境目录/share/jupyter/kernels/
二、修复内核随机不识别问题
- 先完全关闭所有VSCode进程,执行以下命令清除VSCode的异常全局配置:
defaults delete com.microsoft.VSCode ApplePressAndHoldEnableddefaults delete com.microsoft.VSCodeInsiders ApplePressAndHoldEnabled - 打开VSCode设置,搜索
jupyter.kernels.excludePythonEnvironments,删除列表中你需要保留的虚拟环境路径,避免扩展误过滤有效内核 - 搜索
python.venvPath,填写你存放所有虚拟环境的统一父目录路径,帮助Python扩展稳定扫描所有虚拟环境 - 按
Cmd+Shift+P打开命令面板,执行Jupyter: Clear Jupyter Kernel and Workspace Storage,清除缓存后重启VSCode - 如果你使用conda、poetry等工具管理虚拟环境,额外在设置中搜索
python.condaPath/python.poetryPath,填写对应工具的绝对路径,避免扩展调用时找不到路径
注意:不要在已激活虚拟环境的终端中启动VSCode,环境变量冲突会导致内核扫描逻辑异常
三、修复Notebook格式化、自动补全失效问题
- 打开VSCode设置,搜索
notebook.intellisense.enabled,确认该开关处于开启状态 - 搜索
python.languageServer,选择Pylance作为语言服务,Pylance对Jupyter Notebook的兼容性远高于其他语言服务 - 搜索
python.formatting.provider,选择你常用的格式化工具(autopep8/black/yapf均可),再搜索notebook.formatting.enabled确认该开关打开 - 禁用其他与Python编辑、格式化相关的第三方扩展,避免功能冲突
内容的提问来源于stack exchange,提问作者MikasaEsSukasa
相关产品推荐
相关产品推荐

