pbd命令
pdb官方文档:https://docs.python.org/3/library/pdb.html
用法
一、直接调试函数
举例:
>>> import pdb
>>> import mymodule
>>> pdb.run('mymodule.test()')
> <string>(0)?()
(Pdb) continue
> <string>(1)?()
(Pdb) continue
NameError: 'spam'
> <string>(1)?()
(Pdb)
二、打断点
- 用法:
pdb.set_trace()
- 常用命令:
命令 | 描述 |
---|---|
h(elp) [command] | 帮助 |
w(here) | 当前执行堆栈位置 |
s(tep) | 执行下一条语句,遇到函数进入 |
n(ext) | 执行下一条语句,遇到函数不进入 |
c(ontinue) | 继续执行,直到下一个断点 |
r(eturn) | 执行当前函数到结束 |
j(ump) lineno | 设置将要被执行的下一行,如果代码在后面(未执行),则直接执行到指定行,如果在前头(已执行),则重新运行并执行到对应行。 |
l(ist) [first[, last]] | 列出源码 |
q(uit) | 退出debug |