2

Python 调试器 (pdb) 中是否有类似“运行直到引发下一个异常”的命令?

似乎是一个明显的要求,但似乎找不到它。

更新:要清楚,我的问题是一个异常,它被捕获并变成日志文件中的不充分消息。而且我找不到引发异常的位置。

我想如果我可以进入跟踪模式并说“运行直到抛出异常”,那将是找到它的最直接的方法。我认为验尸在这里行不通。

4

2 回答 2

0

按如下方式执行您的脚本:

python -m pdb myscript.py

cEnter。当引发未捕获的异常时,您的程序将停止运行并返回到 pdb 调试提示符。

于 2013-07-28T23:30:26.297 回答
0

您能否在失败脚本中的代码中搜索记录的消息文本(我意识到如果字符串以复杂的方式生成,这可能会很困难)。如果您可以找到生成/记录消息的点,那么您可以设置适当的断点来解决问题。

不幸的是,AFAIK Pythonpdb调试不提供某些其他语言中存在的功能,例如,break when Exception is raised.

于 2013-07-29T04:19:07.560 回答