【Python】Python调试器pdb

Python调试器pdb使用

PDB调用启动方法

pdb有2种用法:

  • 非侵入式(不用额外修改源代码,在命令行下直接运行就能调试)
python3 -m pdb filename.py
  • 侵入式(需要在被调试的代码中添加一行代码然后再正常运行代码)
import pdb;pdb.set_trace()

当你在命令行看到下面这个提示符时,说明已经正确打开了pdb

(Pdb) 

PDB常用命令

命令说明
1.查看源代码
l查看当前位置前后11行源代码(多次会翻页)当前位置在代码中会用–>这个符号标出来
ll查看当前函数或框架的所有源代码
2.添加断点 b1.不带参数表示查看断点设置 2.带参则在指定位置设置一个断点
b linenolineno断点添加到哪一行
b filename:linenofilename文件名,断点添加到哪个文件,如test.py
b functionnamefunction:函数名,在该函数执行的第一行设置断点
3.添加临时断点tbreak执行一次后时自动删除(这就是它被称为临时断点的原因)
tbreak lineno
tbreak filename:lineno
tbreak functionname
4、清除断点cl1.不带参数用于清除所有断点,会提示确认(包括临时断点)2.带参数则清除指定文件行或当前文件指定序号的断点
cl filename:lineno
cl bpnumber [bpnumber ...]bpnumber 断点序号(多个以空格分隔)
5、打印变量值p
p expressionexpression Python表达式
6、逐行调试命令
s执行下一行(能够进入函数体)
n执行下一行(不会进入函数体)
r执行下一行(在函数中时会直接执行到函数返回处)
7、非逐行调试命令
c持续执行下去,直到遇到一个断点
unt lineno持续执行直到运行到指定行(或遇到断点)
j lineno直接跳转到指定行(注意,被跳过的代码不执行)
8、查看函数参数
a在函数中时打印函数的参数和参数的值
9、打印变量类型
whatis expression打印表达式的类型,常用来打印变量值
10、启动交互式解释器
interact启动一个python的交互式解释器,使用当前代码的全局命名空间(使用ctrl+d返回pdb)
11、打印堆栈信息
w打印堆栈信息,最新的帧在最底部。箭头表示当前帧。
12、退出pdb
q
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值