pdb调试
pdb调试
jupyter notebook中使用
link
pdb的使用方式一样,在需要的地方插入import pdb; pdb.set_trace()即可:
ipdb在import引入后,添加set_trace()即可:
from IPython.core.debugger import set_trace
def test_breakpoint_with_ipdb():
a = 1
set_trace()
b = 2
c = 3
final = a + b + c
return final
test_breakpoint_with_ipdb()
b是动态设置断点。
单写b,是查看所有断点的状态。
clear 5 (5是断点标号)
删除断点后,就可以执行r返回了。

args是打印函数参数
w是函数调用栈

Python pdb调试
在需要断点调试的地方,加上:import pdb;pdb.set_trace()
n:[next] 让程序运行下一行,如果当前语句有一个函数调用,用’n’是不会进入被调用的函数体中的
c:[continue] 让程序正常运行,直到遇到断点
j:让程序跳转到指定的行数
l:列出当前将要运行的代码块
s:与n类似,但如果当前有一个函数调用,那么s会进入被调用的函数体中
a:打印当前函数的参数
p:打印某个变量(例如:p _new)
q:退出调试
h:打印当前版本pdb可用的命令,如果需要查询某个命令,可以输入 h [command]
Pdb aistudio
动态断点
去年刚接触pdb调试时,只会在当前运行的py文件中设置断点,就是运行程序后,b 192 在当前程序的第192行设置一个断点。但是往往同一个项目下会被调用的其他py文件,比如 同目录的config.py文件中想中断一下查看个变量什么的就不知如何操作。
b 查看所有断点
cl 1 删除第一个断点
前段时间才明白是可以 用 b config.py:192 来设置同项目下其他程序中的断点的,这样就可以方便地在程序运行的任意处中断来查看变量。
https://blog.csdn.net/qq_41872271/article/details/109045570
其他有用的
s(tep) 进入函数体中执行
r(eturn)运行完函数体
q 退出
l,j
a 函数传入的所有参数

浙公网安备 33010602011771号