1、基本概念:
PDB:Python自带的Debug工具,全称:Python Debugger
2、基本用法:
PDB有两种用法,(非侵入式方法和侵入式方法)
非侵入式方法:不用额外修改代码,在命令行下直接运行就能调试;
侵入式方法:需要在被调试的代码中添加一行代码然后再正常运行代码;
非侵入式方法的使用:
python -m pdb {FileName}
侵入式方法的使用:
import pdb;
pdb.set_trace()
3、常用的PDB用法:
命令:
l(单个小写的L)
说明:
查看当前位置前后11行源代码,当前位置在代码中会用->这个符号表示出来;
命令:
ll(两个小写的L)
说明:
查看当前函数或框架的所有源代码;
添加断点:
命令:
b
b LineNumber
b FileName:LineNumber
b FunctionName
参数含义:
LineNumber:具体的行数;
FileName:文件名,断点添加到哪个文件;
FunctionName:函数名,在该函数执行的第一行设置断点;
说明:
不带参数表示查看断点的设置;
带参数在指定位置设置一个断点;
添加临时断点:
命令:
tbreak
tbreak LineNumber
tbreak FileName:LineNumber
tbreak FunctionName
参数:
同b
说明:
执行一次之后,自动删除(这也就是为什么被称为临时断点)
清除断点:
cl
cl FileName:LineNumber
cl bpnumber
参数:
bpnumber 断点序号(多个以空格分隔)
说明:
不带参数用于清除所有的断点,会提示确认(包含临时断点)
带参数则清除指定文件行或者当前文件指定序号的断点;
参考链接: