2017-07-31 72 views
0

单步执行pdb中的代码时,任何异常立即结束程序。我该如何修复异常并继续调试?有没有办法避免重新启动程序的开销?如何在调试python时从异常中恢复?

看起来像许多py调试器共享这种烦恼:pdb,ipdb,pycharm,pydev。

+0

你可以捕获该异常,运行'pdb.post_mortem()'的'except'块捅了一下周围,然后将继续执行,因为异常被处理。 – Will

回答

0

一旦我找到它崩溃的地方,我会经常设置try/except块来帮助找出原因。

try: 
    # code that causes exception 
except WhateverException as err: # be specific with the type of exception 
    import pdb; pdb.set_trace() 
else: 
    # do what you'd normally do