Pdb Python debugger

Python 自带的命令行 debugger

基本用法

在需要调试的地方添加:

1
breakpoint()

Pdb 命令

执行到断点后显示 (Pdb) 即进入 debugger

p x 打印变量 x

w while 查看调用栈

l lst 查看当前位置附近的源代码 (当前行前后的11行代码)
再输入 l 会往下再翻11行
l. 回到当前的行数

ll 显示当前函数的全部代码

u up d down 上调 下调 当前帧(打印变量时,会从当前局部变量查找)

n next 运行一行程序

s step 进入函数,当当前行没有函数时,效果等同于 n

until 运行到比当前行数大为止
until 10 运行到行数大于等于10为止

r return 停在函数返回之前

c continue 让程序恢复正常运行

q quit 退出 debug

以 pdb 方式运行

python -m pdb example.py

会在第一个可以停下来的地方停下

pdb 设置断点

b 5 break 5 在第五行设置断点
b break 列出所有的 breakpoint
b 函数名 在函数里设下断点

clear 1 删除编号为 1 的 breakpoint
clear 删除所有 breakpoint