python 使用traceback定位异常

1,352 阅读1分钟

问题描述

捕获异常可以使用 try结合except Exception as e然后处理异常,但是不知道异常在哪个文件出现,在哪一行出现,于是可以用到traceback

使用

traceback.print_exc()方法打印出的信息包括3部分:错误类型、错误对应的值以及具体的trace信息,包括文件名、具体的行数、函数名以及对应的源代码

import traceback
try:
    1/0
except Exception as e:
    print(e)
    traceback.print_exc()
print("--------")

将异常输出到文件当中

import traceback
try:
    1/0
except Exception as e:
    print(e)
    # 将异常变为字符串,可以方便讲其输出到log当中
    log = traceback.format_exc()
    print(type(log), log)
print("--------")