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)
posted @ 2019-11-01 15:13  亚北薯条  阅读(554)  评论(0编辑  收藏  举报