pdb调试

作者: Bystander_1996 | 来源:发表于2019-10-10 09:59 被阅读0次

    参考文档:https://www.jianshu.com/p/8e5fb5fe0931

    调用pdb调试功能:Python -m pdb filename

    1.断点 ( btbreak, cl , disable,enable,ignore bpnumber,condition bpnumber)

    b设置断点

    b num: 给第num行打断点
    b function_name:当前文件函数名为 function_name 的函数打断点
    b test1.A.add:在 import test1 文件的 A 类的 add 方法打断点
    b A.add:在 A 类的 add 方法打断点

    tbreak:设置临时断点

    tbreak: 设置临时断点,运行完自动删除,和以上设置方式一致)

    cl:清除断点

    cl:清除所有断点
    cl 3:清除断点列表中第3个断点
    cl test.py:18:清除 test.py 文件的第18行的断点
    cl test1:18:清除 import test1 文件的第18行断点

    disable,enable:停用启用断点

    和以上cl的用法一致

    ignore bpnumber:忽略断点几次

    ignore 1 3:忽略断点列表中第1个断点3次,一般循环中用

    condition bpnumber:断点条件

    condition 5 i==0:当断点列表中第5个断点中变量 i 等于 0 的时候执行断点

    2.显示代码( l , w )

    l: 查看当前位置的代码
    l 5, 20: 列出5到20行代码
    w :显示当前的执行位置

    3. 执行(s, n, unt, r , c, run

    s:执行下一条命令,如果本句是函数调用,则 s 会执行到函数的第一句
    n:执行下一条语句,如果本句是函数调用,则执行函数,接着执行当前执行语句的下一条。
    unt:执行到下一行
    r:执行当前运行函数到结束
    c:继续执行,直到遇到下一条断点
    run:重新执行

    4.调试工具(p, pp, a

    p params:打印 params 参数
    pp expression:格式化打印出来的结果
    a: 显示当前所有变量
    commands num:给断点num写测试脚本以end结束脚本

    5.其他

    j:跳转至指定程序行(如果是前行,则忽略中间行代码。如果是后退,状态重设为回退行状态)
    alias :自定义一个函数,参数可由%1,%2来表示,类似 Python 的 lambda
    unalias name删除函数

    相关文章

      网友评论

          本文标题:pdb调试

          本文链接:https://www.haomeiwen.com/subject/yejpuctx.html