第2章 · 代码编写与调试效率


第 2 章 · 代码编写与调试效率

章节摘要:第 1 章把环境和单元格结构理顺后,本章聚焦「写代码更快、错了一秒定位」。从 Tab/Shift+Tab 补全、行/单元格 Magic 命令,到 %debug 与 pdb 断点,再到 PEP 8 与 black 格式化——读完应能在 Notebook 内完成计时对比、异常调试和基本代码审查,而不必每次导出到 IDE。

本节导读

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

  1. 用 Tab 与 Shift+Tab 补全对象成员并展开 docstring
  2. 区分 % 行 Magic 与 %% 单元格 Magic,熟练使用 time/timeit、load/run、who/whos
  3. 异常后用 %debug 或 pdb.set_trace() 检查变量、单步执行
  4. 用 logging 与 unittest 做 Notebook 内轻量测试
  5. 遵循 PEP 8,并用 black/autopep8 统一格式

核心概念速览

金句:Magic 是 Notebook 的「瑞士军刀」——计时、清变量、跑脚本,一行 % 比切终端快。

子章节导航

2.1 代码自动补全与提示

Tab 补全、pd. 后成员列表、括号内参数提示、Shift+Tab 展开 docstring。

2.2 魔法命令

%time/%timeit、%matplotlib inline、%load/%run、%pwd/%ls、%who/%whos、%reset、%%writefile。

2.3 调试技巧

%debug 交互命令 n/c/p/q、pdb.set_trace()、print/logging、unittest/pytest 片段。

2.4 代码风格与可读性

PEP 8、命名与注释、Markdown 说明格、black/autopep8、Mermaid 流程图辅助阅读。

子章节之间的逻辑关系

补全提速 → Magic 辅助运行/计时 → 出错调试 → 风格统一便于协作 ​

先减少「拼错函数名」和「记不清参数」,再用 Magic 量化和加载外部脚本;调试节处理 inevitable 的异常;最后一节把能跑的代码变成团队能读的结构。

前置知识与后续延伸

  • 前置:第 1 章稳定内核与单元格操作
  • 为后续铺垫:第 3 章 %timeit 对比 pandas 写法;第 4 章 Git 审查依赖 PEP 8 与 Clear Output

本章学习建议

本章四节是一条完整的"写代码流水线":2.1 用 Tab 和 Shift+Tab 把写函数名的时间省下来,2.2 用 %timeit 等 Magic 把"快不快"变成数字,2.3 面对异常用 %debug 进场,2.4 用 PEP 8 和 black 把探索代码收拾成可审查的样子。建议按这个顺序过一遍,每节都开一个空白 Notebook 亲手敲:先输入 import pandas as pd 体会 Tab 补全,再用 %timeit 对比循环和向量化,然后故意写一个除零错误用 %debug 检查变量,最后用 black 格式化导出的 .py。四个动作做完,你就拥有了"写完即验证、报错即定位、交付即整洁"的最小闭环。

本章结构图

本章结构图

本章目标自测

读完本章,请对照这组问题检查自己:能不能不看文档写出 %timeit 与 %%timeit 的区别?异常后是否第一时间想到 %debug 而不是加十个 print?导出的 .py 是否敢直接交 CI?三题都能答,本章的四个环节——补全、魔法、调试、风格——才算真正闭环。

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