美文网首页
Python traceback

Python traceback

作者: 衣介书生 | 来源:发表于2020-03-30 21:04 被阅读0次
sample
try:
    1/0
except Exception as e:
    print(e)

输出结果:

➜  ~ python test.py 
integer division or modulo by zero
➜  ~

从输出结果来看,只知道出现异常了,没有其他 DEBUG 信息了。

import traceback

try:
    1/0
except Exception as e:
    traceback.print_exc()

输出结果:

➜  ~ python test.py 
integer division or modulo by zero
➜  ~ python test.py
Traceback (most recent call last):
  File "test.py", line 4, in <module>
    1/0
ZeroDivisionError: integer division or modulo by zero
➜  ~ 

从输出结果可以知道抛异常了以及发生异常的行数,便于 DEBUG。

format_exc && print_exc
  • traceback.format_exc(): 返回字符串
  • traceback.print_exc(): 直接打印,即traceback.print_exc()print(traceback.format_exc())效果是一样的。print_exc()还可以接受file参数直接写入到一个文件。比如 traceback.print_exc(file=open('tb.txt','w+'))

相关文章

网友评论

      本文标题:Python traceback

      本文链接:https://www.haomeiwen.com/subject/dmckdhtx.html