基础介绍:
pdb是python自带的工具包,为使用Python程序提供了完整的代码调试功能,可以通过pdb实现设置断点、单步调试、进入函数调试、查看当前代码、查看栈片段、动态改变变量的值等功能。
调试方法:
以下面的代码为例:
import pdb
import paddle
import numpy as np
pdb.set_trace() # 当运行当前任务脚本时会让程序停留在此行,然后进入调试模式
x = paddle.to_tensor(np.array([1], dtype='int64'))
y = paddle.to_tensor(np.array([1], dtype='int64'))
z = x + y
print(z)
运行调试程序进入到pdb调试模式:
$ python test.py
/Users/saxon/test.py(7)()
-> x = paddle.to_tensor(np.array([1], dtype=‘int64’))
(Pdb) n =======> 单步运行
/Users/saxon/test.py(8)()
-> y = paddle.to_tensor(np.array([1], dtype=‘int64’))
(Pdb) n =======> 单步运行
/Users/saxon/test.py(9)()
-> z = x + y
(Pdb) n =======> 单步运行
/Users/saxon/test.py(11)()
-> print(z)
(Pdb) p(z) =======> 查看变量信息
Tensor(shape=[1], dtype=int64, place=CPUPlace, stop_gradient=True,
[2])
(Pdb) q =======> 退出调试模式