如果python代码引发异常,我们可以捕获它并打印类型,错误消息,回溯并获取发生异常的python脚本中的文件名和行号之类的信息。
我们可以找到错误的类型,值,回溯参数
Type给出已经发生的异常的类型;值包含错误消息;traceback包含堆栈快照和有关错误消息的许多其他信息详细信息。
sys.exc_info()函数返回这三个属性的元组,并且raise语句具有接受这三个部分的三参数形式。
在示例代码中获取异常类型,文件号和行号
import sys, os try: raise NotImplementedError("No error") except Exception as e: exc_type, exc_obj, exc_tb = sys.exc_info() fname = os.path.split(exc_tb.tb_frame.f_code.co_filename)[1] print(exc_type, fname, exc_tb.tb_lineno