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)