错误时自动启动python调试器

错误时自动启动python调试器,第1张

错误时自动启动python调试器

您可以使用traceback.print_exc打印异常跟踪。然后使用sys.exc_info提取回溯,最后使用该回溯调用pdb.post_mortem

import pdb, traceback, sysdef bombs():    a = []    print a[0]if __name__ == '__main__':    try:        bombs()    except:        extype, value, tb = sys.exc_info()        traceback.print_exc()        pdb.post_mortem(tb)

如果您要使用产生异常的框架的局部语言使用pre.interact启动交互式命令行,则可以执行

import traceback, sys, predef bombs():    a = []    print a[0]if __name__ == '__main__':    try:        bombs()    except:        type, value, tb = sys.exc_info()        traceback.print_exc()        last_frame = lambda tb=tb: last_frame(tb.tb_next) if tb.tb_next else tb        frame = last_frame().tb_frame        ns = dict(frame.f_globals)        ns.update(frame.f_locals)        pre.interact(local=ns)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5616561.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存