1.2 快捷键与命令模式


1.2 快捷键与命令模式

本节摘要:Jupyter 的效率引擎是「命令模式 + 编辑模式」双轨操作。本节按 SOURCE 快捷键表梳理蓝框/绿框切换、插入删除单元格、运行与中断内核,并说明如何通过 Help → Edit Keyboard Shortcuts 自定义绑定。

本节目标

阅读完本节,你应当能够:

  1. 用边框颜色区分命令模式(蓝)与编辑模式(绿),并用 Esc/Enter 切换
  2. 在命令模式下用 A/B、X/C/V、DD、Y/M 完成结构操作而不碰鼠标
  3. 用 Shift+Enter、Ctrl+Enter、Alt+Enter 三种运行方式配合工作流
  4. 用 H 打开帮助、I,I 中断、0,0 重启内核

一、两种模式:先看边框颜色

SOURCE 定义:

  • 命令模式(Command Mode):未在单元格内输入时,边框为蓝色。用于插入/删除/复制单元格、切换类型、运行整本等结构操作。
  • 编辑模式(Edit Mode):点击单元格内部开始输入,边框为绿色。用于写代码、Markdown、Tab 补全。

Esc 从编辑回到命令;Enter 从命令进入编辑。记不住快捷键时,先确认当前是蓝框还是绿框——同一按键在不同模式下含义不同。

二、命令模式核心快捷键

SOURCE 原文表格精华(建议打印贴显示器旁):

快捷键 功能
Enter 进入编辑模式
Shift + Enter 运行当前格并选中下一格
Ctrl + Enter 只运行当前格
Alt + Enter 运行并在下方插入新格
A / B 上方/下方插入单元格
X / C / V 剪切 / 复制 / 粘贴到下方
Shift + V 粘贴到上方
D, D 删除当前格(连按两次 D)
Z 撤销删除
Y / M / R 转为 Code / Markdown / Raw
Shift + M 合并选中单元格
H 显示快捷键帮助
I, I 中断 Kernel
0, 0 重启 Kernel
J / K 上/下移动选中(命令模式)

⚠️ 常见坑:在编辑模式里按 A/B 会往代码里输入字母,而不是插入单元格——先 Esc 回命令模式。

三、编辑模式:写代码时的快捷键

快捷键 功能
Tab 代码补全或缩进
Shift + Tab 显示函数 docstring(可连按展开)
Ctrl + / 注释/取消注释选中行
Ctrl + Shift + - 在光标处分割单元格
Ctrl + Enter 运行当前格
Esc 回到命令模式

SOURCE 还提到 Ctrl + K / Ctrl + Shift + K 在单元格内向上/向下查找——长 Notebook 改函数名时比滚动快。

四、自定义与高级用法

自定义快捷键:菜单 Help → Edit Keyboard Shortcuts,搜索命令名并改键位。注意别与浏览器或系统快捷键冲突(例如 Ctrl+S 在部分浏览器会保存网页)。

批量操作:命令模式下 Shift + 方向键Shift + J/K 多选相邻单元格,再 X/C/V 或 DD 批量处理——整理「探索期」留下的碎格时极省时间。

整本验收Kernel → Restart & Run All(SOURCE:命令模式下也可通过菜单)从头顺序执行,暴露「上面格定义了变量、下面格依赖但中间没跑」的隐式状态问题。

💡 关键直觉:熟练用户的分水岭不是背全表,而是 Esc → A/B/DD → Enter 形成肌肉记忆;运行三键(Shift+Enter / Ctrl+Enter / Alt+Enter)对应「往下写 / 原地看结果 / 插一格做对照」三种节奏。

一节小结

  • 蓝框命令、绿框编辑:Esc/Enter 切换是一切快捷键的前提
  • A/B/X/C/V/DD:结构操作零鼠标
  • Y/M/R:Code / Markdown / Raw 类型切换
  • I,I 与 0,0:卡死时中断与重启
  • Help → Edit Keyboard Shortcuts:按习惯改绑定
  • Restart & Run All:交付前验收隐式依赖

下一节在 单元格 粒度上细化复制、移动、分割与运行策略。

把快捷键落成肌肉记忆

下面是本节的速查脚本,可在 Notebook 里粘贴运行,输出一张你自己常用的映射表:

shortcuts = { "Esc": "回到命令模式(蓝框)", "Enter": "进入编辑模式(绿框)", "Shift+Enter": "运行当前格并移动到下一格", "Ctrl+Enter": "只运行当前格,光标停留", "Alt+Enter": "运行并在下方插入新格", "A / B": "当前格上方 / 下方插入单元格", "X / C / V": "剪切 / 复制 / 粘贴到下方", "Shift+V": "粘贴到上方", "D,D": "删除当前格(连续两次)", "Y / M": "转为 Code / Markdown", "Shift+M": "合并选中的单元格", "I,I": "中断内核", "0,0": "重启内核", } for k, v in shortcuts.items(): print(f"{k:14s} -> {v}")

高频动作组合

  • 写完一行代码就跑Shift+Enter 是默认节奏,往下推进时不用碰鼠标。
  • 改一个旧格再对比结果Ctrl+Enter 原地重跑,看输出变化。
  • 临时插一格做对照实验Alt+Enter 在当前格下方新建,天然隔离"对照格"。
  • 大段重排:命令模式 J/K 移动选中,Shift+J/K 扩展多选,再 X 剪走、Shift+V 插回上方。

自定义快捷键的正确姿势

菜单 Help → Edit Keyboard Shortcuts 打开快捷键编辑器。搜索命令名时用英文关键词更准,例如搜 run 而不是"运行"。修改前先问自己两个问题:这个键现在有没有占用?会不会与浏览器快捷键冲突?例如把 Ctrl+S 绑成"保存",在部分浏览器里会先触发网页另存为,体验反而更差。改完点保存立即生效,无需重启。

中断与重启的适用场景

  • 死循环 / 长时间无响应:先 I,I 中断,能保住已定义变量;不行再 0,0
  • 装完包后 import 仍报错0,0 重启是必须步骤,中断不够。
  • 内存被大 DataFrame 占满:重启后变量全清,必要时配合第 5 章 del + gc.collect()。

作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U