func(a(), b.c)
在 pdb 调试器中执行上述行时, usingstep将实际进入a,然后进入 getter,b.c如果它的非典型(例如是 a property),然后实际进入func.
通常我发现自己使用stepfollowingr从我不感兴趣的框架返回,并且经常莫名其妙地错过并错过step直接进入func.
我如何直接进入func,或者调试器命令的序列将保证我最终进入func而不是通过它?
tb func("temporary break at func") 后跟c("continue") 应该可以工作。
我将通过在您感兴趣的 func 内的行号处设置一个中断来处理此问题,然后使用 continue。例如,假设您的代码如下所示:
110 def func(a1, a2):
111 "" docstring ""
112 first interesting line
然后这样做:
python -m pdb caller.py
pdb> b 112
pdb> c