【发布时间】:2012-10-21 21:11:49
【问题描述】:
有什么方法可以让python程序启动一个交互式调试器,比如import pdb; pdb.set_trace()而不是实际抛出异常?
我知道完成这项工作的难度,但它比巨大的堆栈跟踪更有价值,之后我必须使用它来确定在哪里插入断点,然后重新启动程序来调试它。我知道简单地启动调试器而不是抛出异常是没有意义的,因为任何异常都可以在一个级别或另一个级别上捕获,所以 如果我可以选择一个交互式调试会话将启动的异常列表而不是它们被抛出(因为我知道此列表中的异常确实是“错误”,之后不会出现有意义的程序行为)...
我听说 Common Lisp 有这样的东西,但我不知道它是如何工作的,只是“真正的 lispers” 对它赞不绝口......
【问题讨论】:
-
这个问题看起来非常类似于:Starting python debugger automatically on error 有更好的答案。