PDB命令行调试Python代码

常用的调试命令:

直接回车是重复前一条命令!

p(print): 查看一个变量值

n(next) :下一步

s(step) :单步,可进入函数

c(continue):继续前进

l(list):看源代码

s(tep):跟n相似,但是如果当前有一个函数调用,那么s会进入被调用的函数体中

c(ontinue):让程序正常运行,直到遇到断点

j(ump):让程序跳转到指定的行数

q(uit):退出调试

断点设置
(Pdb) b 10 #断点设置在本py的第10行
(Pdb) b #查看断点编号

运行
(Pdb)n #单步运行
(Pdb)s #细点运行 也就是会下到,方法
(Pdb)c #跳到下个断点

查看
(Pdb)p param #查看当前 变量值
(Pdb)l # 查看运行到某处代码
(Pdb)a # 查看全部栈内变量
(Pdb)w # 列出目前call stack 中的所在层。
(Pdb)d # 在call stack中往下移一层
(Pdb)u # 在call stack中往上移一层。如果在上移一层之后按下 n ,则 会在上移之后的一层执行下一个叙述,之前的 function call 就自动返回。
(Pdb)cl # 清除指定的断点。如果没有带参数,则清除所有断点。
(Pdb)disable # 取消所有断点的功能,但仍然保留这些断点。
(Pdb)j lineNo # 跳到某行执行。只有在 call stack 的最底部才能作用。
(Pdb)l # 列出目前所在档案中的位置。连续地 l 命令会一直列到档案结尾,可以使用指定行数或范围来打印。
(Pdb)alias # 以一个”别名”代替”一群除错命令”
(Pdb)unalias # 取消某个 alias。
(Pdb)[!]statement # 在目前的环境(context)中执行叙述。

你可能感兴趣的:(python)