zoukankan      html  css  js  c++  java
  • python中快捷方便的调试利器pdb

    1.终端命令行中进入调试模式

    • python -m pdb xxx.py

    2.Jupyter中进入调试模式

    1.异常的显示方式

    • %Verbose 详细显示
    • %Plain 简单显示

    2.进入调试模式的方法

    • 任何时候都可以进入调试,在代码需要调试的部分,使用pdb包里的.set_trace()方法,进入pdb调试模式
    • 异常后手动进入调试,发生异常后,手动输入%debug进入pdb调试模式
    • 异常后自动进入调试,前部加%pdb on,当发生异常后自动进入pdb调试模式

    3.调试快捷键

    • 设置断点
      b 行数n : 在当前文件的n行设置断点

    • 调试操作
      n : 单步运行,不进入函数
      s : 单步运行,可进入函数
      c: 恢复执行,至下一个断点
      u/d :在函数调用栈中上下移动
      q : 退出调试
      其中:可以用 Enter 重复前一个命令

    • 查看变量
      !vname或者p vname :可查看变量的内容

    4.显示行号
    点击View-->点击Toggle Line Numbers

    2.代码示范

    1.任何时候都可以进入调试,在代码需要调试的部分,使用pdb包里的.set_trace()方法,进入pdb调试模式

    import pdb
    pdb.set_trace()
    def chu(a,b):
        c = a/b
        return c
    a = 1
    b = 0
    c = chu(a,b)
    
    
    --Return--
    > <ipython-input-1-02fe8b596d4f>(2)<module>()->None
    -> pdb.set_trace()
    (Pdb) b 6
    Breakpoint 1 at <ipython-input-1-02fe8b596d4f>:6
    (Pdb) c
    > <ipython-input-1-02fe8b596d4f>(6)<module>()->None
    -> a = 1
    (Pdb) 
    

    2.异常后手动进入调试,发生异常后,手动输入%debug进入pdb调试模式

    def chu(a,b):
        c = a/b
        return c
    a = 1
    b = 0
    c = chu(a,b)
    
    %debug
    

    3.异常后自动进入调试,前部加%pdb on,当发生异常后自动进入pdb调试模式

    %pdb on
    def chu(a,b):
        c = a/b
        return c
    a = 1
    b = 0
    c = chu(a,b)
    
  • 相关阅读:
    大爽Python入门教程 0-2 什么是IDE?python选什么IDE好?
    大爽Python入门教程 0-3 安装Atom与配置Python环境
    大爽Python入门教程 0-1 安装python
    HBase 过滤器 及shell 操作过滤器
    分布式ID生成方式(雪花算法)
    tidb 踩坑经验(转载)
    MYSQL ACID
    kafka什么时候会丢消息
    java 单例模式模式实现
    使用 GitHub 的十个最佳实践
  • 原文地址:https://www.cnblogs.com/laiyaling/p/11777180.html
Copyright © 2011-2022 走看看