jupyter 中启用行号有三种方式:快捷键 shift+l(需先按 esc 进入命令模式)、菜单 view → toggle line numbers,或修改配置文件实现永久生效。

默认不显示,但有 3 种可靠方式可立即启用——按需选一种就行,不用装插件、不改环境变量。
快捷键:Shift+L(最常用)
这是绝大多数人日常调试时用得最多的方式,响应快、无副作用。
- 先确保光标在目标代码单元格内,按
Esc进入命令模式(左侧边框变蓝) - 按
Shift+L(注意是大写 L,即 Shift + 小写 l),当前单元格立刻显示/隐藏行号 - 每个单元格独立控制,不影响其他单元格
- 重启 Jupyter 后状态不保留,适合临时查错
菜单操作:View → Toggle Line Numbers
和快捷键完全等效,适合不记得键位或用触控板操作的场景。
- 点击顶部菜单栏的
View - 选择
Toggle Line Numbers(部分旧版本显示为Show Line Numbers) - 同样只作用于当前激活的单元格
- 在 Jupyter Lab 中路径相同,但按钮图标可能略有差异
永久生效:修改 custom.js 或 settings.json
想每次打开 notebook 都自动带行号?必须改配置,但要注意路径和格式细节。
- Jupyter Notebook(非 Lab):编辑
~/.jupyter/custom/custom.js,插入以下内容并重启服务
define(['base/js/namespace', 'base/js/events'], function(ipython, events) {
events.on("app_initialized.notebookapp", function() {
ipython.cell.options_default.cm_config.linenumbers = true;
});
});
- VS Code 中的 Jupyter 插件:在
settings.json里加一行"notebook.lineNumbers": "on"(注意是lineNumbers,不是linenumbers,大小写敏感) - 不要用
notebook.linenumbers(多了一个i),那是过时/错误的 key,会导致无效 - 改完保存后,需关闭所有 notebook 标签页再重开,热重载不生效
容易忽略的一点:Jupyter Lab 的行号开关藏得更深,它不在 View 菜单里,而是在右上角「Settings」→「Advanced Settings Editor」→「Notebook」→ 找到 lineNumbers 并设为 true;如果你用的是 Lab,别在 View 里白找了。











