1. 简介
pdb是一个交互式的python代码调试器,它支持断点、行级别的单步调试、检查栈信息、列出源码等。
2. 启动方式
pdb有两种启动方式:外部启动和内部启动。
(1)外部启动
外部启动,即是通过cmd启动。你需要执行以下命令:
python -m pdb <file_name>.py <args>
它以debug模式启动执行<file_name>.py
。
(2)内部启动
内部启动,即是通过在源码中注入以下代码来实现进入debug模式:
import pdb
...
...
pdb.set_trace()
然后正常执行你的源代码,然后程序会在pdb.set_trace()
这一行停下来。
3. 相关命令
在进入debug模式之后,你就可以执行下面命令来调试了。
浏览代码命令
l(ist) 列出当前行周围的11行
w(here) 展示当前行的文件名和行号
控制执行命令
n(ext) 执行当前行
s(tep) 进入被当前行调用的函数
r(eturn) 一直执行,直到当前函数返回
b <line_num> 在<line_num>创建断点
b <line_num>, <condition> 在<line_num>行创建条件断点
b 列出所有断点
c(ontinue) 一直执行,直到遇到断点
clear <line_num> 清除<line_num>的断点
q(uit) 退出调试器
run <args> 重启调试器
打印命令
p(rint) <variable> 打印变量的值
Ref
https://web.stanford.edu/class/physics91si/2013/handouts/Pdb_Commands.pdf