VSCode运行Jupyter Notebook的核心是确保所选Python解释器中已安装并注册ipykernel,否则内核显示“Python 3 (unavailable)”或不可选;需通过Python: Select Interpreter选定环境、在该环境终端执行python -m pip install ipykernel及python -m ipykernel install --user --name xxx --display-name "xxx",并启用ms-toolsai.jupyter与ms-python.python两个扩展。

VSCode 要跑起 Jupyter Notebook,核心不是装插件,而是让当前选中的 Python 解释器里装着 ipykernel 并完成注册——否则右上角永远显示 “Python 3 (unavailable)” 或干脆没选项。
Python 解释器选错,Notebook 就根本启动不了
VS Code 不会跨环境找内核。它只认你用 Python: Select Interpreter 命令选中的那个解释器路径下的包。哪怕你全局 pip install jupyter 成功了,只要没在目标虚拟环境里装 ipykernel,Notebook 就无法连接内核。
- 按
Ctrl+Shift+P(Win/Linux)或Cmd+Shift+P(Mac),输入并执行Python: Select Interpreter - 从列表中选一个明确指向虚拟环境或 conda 环境的路径,比如
./venv/bin/python或C:\Users\X\anaconda3\envs\ds\python.exe - 如果该环境没出现在列表里,说明 VS Code 没扫描到——先在终端激活它,再重开 VS Code
- 选完后,底部状态栏应显示类似
Python 3.11.5 (venv)的信息,这是内核已就绪的第一信号
内核注册失败:常见错误和修复命令
注册命令写错、权限不对、或漏装 ipykernel,都会导致内核不可用。别只查 jupyter --version,要进目标环境终端确认:
- 运行
python -m pip list | grep ipykernel(macOS/Linux)或python -m pip list | findstr ipykernel(Windows),无输出就立刻装:python -m pip install ipykernel - 注册命令必须带
--user:否则内核可能写入系统级目录,VS Code 无权读取;正确写法是:python -m ipykernel install --user --name ds-env --display-name "Python 3 (ds-env)" -
--name不能含空格,--display-name才是下拉菜单里显示的名字 - 注册后务必重启 VS Code(不是“重载窗口”),否则新内核不会出现在右上角内核选择器中
扩展没启用或依赖缺失,Jupyter 功能直接失效
VS Code 的 Jupyter 支持是组合拳:官方 Jupyter 扩展(ID: ms-toolsai.jupyter)必须和 Python 扩展(ID: ms-python.python)共存。缺任何一个,Notebook 都无法加载或执行单元格。
- 打开扩展面板(
Ctrl+Shift+X),搜Jupyter,确认安装的是 Microsoft 官方版(图标是紫色火焰),且状态为“已启用” - 再搜
Python,确保ms-python.python同样已启用——新版 Jupyter 扩展不自带底层解释器桥接,全靠它 - 检查设置里有没有误配:
jupyter.jupyterServerType被设成remote,或填了remoteJupyterServerUri,这会让本地内核被完全忽略 - 如果新建
.ipynb后右上角无内核可选,或点运行没反应,优先检查这两个扩展是否都活着
内核卡在 “Connecting…” 或执行无声无息
这不是界面卡顿,而是内核进程启动失败或意外退出。VS Code 不会像网页版那样弹出 “Kernel died”,只会静默停摆——变量面板不更新、输出区空白、光标卡住都是典型表现。
- 打开输出面板(
Ctrl+Shift+U),切换到Jupyter日志,查找Failed to start the kernel或No module named 'ipykernel' - 首次打开或换环境时,VS Code 可能自动尝试装
ipykernel,但过程静默且易超时;手动在对应环境中运行python -m pip install ipykernel更可靠 - 避免混用
pip和conda:conda 环境优先用conda install ipykernel,pip 环境统一用pip,否则注册路径错乱 - 若反复断连,检查工作区设置是否禁用了
jupyter.askForKernelRestart——关掉它虽减少干扰,但也掩盖了真实问题
最常被跳过的动作,是在目标环境终端里验证 ipykernel 是否真存在、注册命令是否带 --user、以及两个核心扩展是否都启用。这三个点任一出错,都会让整个交互式环境看起来“配置完了却不能用”。


















