【发布时间】:2009-09-04 12:19:51
【问题描述】:
我有一个回溯对象,我想以调用traceback.format_exc() 时得到的良好格式显示它。
这个有内置函数吗?还是几行代码?
【问题讨论】:
标签: python object format traceback
我有一个回溯对象,我想以调用traceback.format_exc() 时得到的良好格式显示它。
这个有内置函数吗?还是几行代码?
【问题讨论】:
标签: python object format traceback
在任何地方都找不到这个,所以我把它贴在这里给未来的人和我未来的自己。
try:
raise Exception('Not an Exception')
except Exception as err:
msg = "".join(traceback.format_exception(type(err), err, err.__traceback__))
print(msg)
这会接受您的异常并提供与 python 的默认异常打印机/print_tb 格式相同的字符串
【讨论】:
format_exc 真的只是
etype, value, tb = sys.exc_info()
return ''.join(format_exception(etype, value, tb, limit))
因此,如果您准备好异常类型、值和回溯,应该很容易。如果您有例外,请注意format_exception 本质上是。
list = ['Traceback (most recent call last):\n']
list = list + format_tb(tb, limit)
limit 默认为 None。
【讨论】:
format_tb,而是使用内置的list 作为多变的。而且我仍然不明白如何打印回溯。
【讨论】:
traceback 文档提供 few examples 和 whole set of functions 用于格式化回溯对象。
【讨论】:
【讨论】: