Python Debugger pdb with Examples

Debugger概述

在开发环境中,使用IDE集成的Debugger(调试工具)进行Debug,能帮助我们开发人员看到代码运行时的状态,对于排查疑难问题,很有帮助。一般来说,Debugger允许我们设置断点,让代码执行到断点时暂停,以便于我们查看断点附近的状态;然后以单步执行的方式,一次只执行一条语句,以便于我们观察状态的变化;也允许我们进入到调用函数内,跟踪函数内代码执行的状态。Debugger还提供更多的调试设置选项,快速地忽略其他代码的执行或从很深的调用堆栈中跳出来,让我们可以关注问题点。

一般来说,IDE的debugger是基于命令行的debugger的。直接使用命令行,一般有两种情况:

  1. 在不能使用IDE方式时,代替IDE进行debugger。比如,在集成测试环境中,服务器没有提供GUI用户界面,不能运行开发环境IDE。这时可以使用远程debugger,或者命令行方式的debugger。
  2. 脚本化调试过程。对于某些复杂的调试场景,基于命令行debugger编写调试脚本,提高调试效率。

本文介绍的是Python的命令行debugger工具包pdb。

如何进入Debugger

假设我们有一个脚本 example.py 需要调试,

python -m pdb example.py

这样会执行到脚本的第一行代码并停顿下来。

pdb 本质上是一个Python的模块 …

Continue Reading