我已经编写了一个函数来在引发异常时进入 PDB(我们称之为trace_on_error)。现在,当我调用pdb.set_trace()pdb 时,合理地进入了 的堆栈帧trace_on_error,这要求我必须先键入up命令才能查看调用函数的帧。
我试图trace_on_error不要求用户知道它是如何实现使用的,因此我想让 pdb 进入调用者堆栈帧。当我寻找文档时,我希望找到类似于 的东西pdb.set_trace(frame_up=1),但我没有找到任何东西。
示例代码:
def trace_on_error(f, errors):
try:
return f()
except errors as e:
pdb.set_trace()
如果您有兴趣查看完整代码而不是最小片段,请参阅此处:https : //github.com/ethomas2/trace/blob/master/trace.py
万千封印
相关分类