Python深入浅出:从入门到工程实践12
第 12 章:调试与日志
学习目标:
- 熟练使用 pdb/ipdb 进行断点调试
- 设计合理的日志策略
- 建立系统化的故障排查思维
12.1 调试方法论:在动手之前先思考
12.1.1 三种调试策略
类比理解:调试就像医生诊断——不能上来就开药,要先望闻问切。盲目加 print 是"头痛医头",系统化的调试方法是"辨证施治"。
| 策略 | 核心思路 | 适用场景 |
|---|---|---|
| 二分法 | 在代码中间设断点,确定问题在上半段还是下半段 | 不知道错误在哪 |
| 假设验证 | 先提出假设,再设计实验验证或否定 | 有初步猜测 |
| 最小复现 | 删减无关代码,找到触发 bug 的最小条件 | 复杂系统中的 bug |
12.1.2 二分法调试
当你在 500 行的函数中遇到一个 bug,不知道问题出在哪
