VS Code notebooks 怎样固定 notebook 内核选择
来源:17golang原创
时间:2026-10-24 20:04:37 469浏览 收藏
VS Code notebooks 没有一个把所有 notebook 永久锁到同一内核的“全局固定”按钮。更准确的做法是:打开目标 notebook,在右上角选择一次内核,VS Code 会记住这个 notebook 最近使用的内核;下次重新打开时通常会继续使用它。若环境被删除、重命名或改到远程机器,就需要重新选择。
官方地址:https://code.visualstudio.com/docs/datascience/jupyter-notebooks
本文使用 VS Code 的 Jupyter notebook 操作路径说明,不绑定某个 Python 版本,也不把界面说明图当成真实截图。开始前准备好 Python 环境或 Jupyter 内核,并安装 Python、Jupyter 扩展。
1. 先打开 notebook,找到内核入口
在 VS Code 资源管理器中打开一个 .ipynb 文件。观察 notebook 编辑器右上角:未选择内核时通常显示 Select Kernel,已选择时会显示当前内核名称。点击这个位置就能打开 Kernel Picker。
不想用鼠标时,打开命令面板,执行 Notebook: Select Notebook Kernel,效果与点击右上角入口相同。这里要选的是 notebook 内核,不是普通 Python 文件的运行解释器;后者可以通过 Python: Select Interpreter 单独切换。

如果右上角完全没有内核入口,先确认打开的是 notebook 编辑器而不是把文件当作普通文本查看;再检查 Python 和 Jupyter 扩展是否已启用。扩展安装只是让入口出现,具体能选到哪些内核仍取决于当前本地、远程或 Codespaces 环境能检测到什么。
2. 直接选择最近使用的内核
打开 Kernel Picker 后,先看顶部的最近使用列表。对于经常反复打开的 notebook,目标内核如果仍然可用,直接点击它即可。选择完成后,右上角的内核标签会变成所选名称,代码单元右下角的语言选择也会跟随内核支持的语言更新。
这个动作就是日常意义上的“固定”:固定的是当前 notebook 与最近一次内核选择之间的关联,不会修改其他 notebook,也不会把同一工作区里的所有文件强制改成同一环境。
3. 找不到目标时进入 Select Another Kernel...
最近使用列表没有目标时,点击 Select Another Kernel...,再按内核来源筛选。常见入口有三类:
| 来源 | 适用场景 | 选择后的确认 |
|---|---|---|
| Jupyter Kernels | 机器上已有可发现的 kernelspec | 列表出现具体内核名称 |
| Python Environments | 按 conda、venv 等 Python 环境选择 | 环境名与解释器来源相符 |
| Existing Jupyter Server | 连接已有的远程 Jupyter 服务 | 服务地址或服务器条目被选中 |
选择 Python Environments 后,点击目标环境;如果用的是远程服务,则进入 Existing Jupyter Server,按提示选择已经配置的服务器。不要只看环境名称就判断成功,回到 notebook 顶部确认当前内核标签已经更新。

如果环境没有出现在 Python Environments 中,可以先执行命令面板里的 Python: Select Interpreter,让 VS Code 识别目标解释器,再回到 Notebook: Select Notebook Kernel 重选。某些环境还需要安装并注册可用的 ipykernel,具体安装方式取决于你的环境管理工具。
4. 重新打开 notebook,确认是否真的记住了
选择完成后保存 notebook,关闭编辑器标签,再重新打开同一个文件。顶部仍显示刚才的内核名称,说明这次 notebook 选择被恢复。重新打开后若又变成 Select Kernel,或者提示原内核不可用,通常不是“固定失败”,而是内核路径已经变化、远程服务没有连接,或当前工作区切换到了另一台计算环境。
遇到这种情况,重复第 3 步,从正确来源选择一次即可。若在受限工作区中看不到富输出或无法执行单元,还要检查 Workspace Trust;信任设置影响代码执行能力,不等同于内核选择记录。
为什么我选择了 Python 解释器,notebook 还是用了旧内核?普通 Python 文件的解释器选择和 notebook 内核选择是两个入口。请在 notebook 中执行 Notebook: Select Notebook Kernel,并直接选目标环境。
能不能让工作区内所有 notebook 都固定到同一个内核?本文所述记忆是按 notebook 选择的。若团队需要统一环境,应通过项目环境、依赖文件和协作约定保持一致,不要把某一个 notebook 的最近选择当成全局策略。
内核名称还在,但运行时失败怎么办?先检查该环境或远程 Jupyter 服务是否仍可访问,再确认 Python/Jupyter 扩展状态;必要时从 Select Another Kernel... 重新绑定可用来源。
最后可以用一个简单标准判断:右上角显示的是目标内核,代码单元的语言入口跟随它变化,重新打开同一个 notebook 后仍能恢复;这三点同时满足,就完成了当前 notebook 的内核固定。
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
477 收藏
-
162 收藏
-
441 收藏
-
238 收藏
-
365 收藏
-
216 收藏
-
291 收藏
-
413 收藏
-
471 收藏
-
444 收藏
-
261 收藏
-
499 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习