Python Exception 异常处理

来源:互联网 发布:英制丝锥淘宝 编辑:程序博客网 时间:2024/05/24 07:08

1-异常处理基本要求是:捕捉异常,同时记录异常到log,同时输出到本地,并根据异常返回提示信息到前端,基本处理流程是

import loggingimport jsonimport traceback# 实现日志记录和输出logger = logging.getLogger('zzz')
try:  # 捕捉异常
    xxx= json.loads(yyy)except:    test_except = "json转换为字典出错,请检查json格式是否正确!"  # 提示信息    logger.error(traceback.format_exc())  # 获取异常字符,存储到本地并输出到控制台

Python中的异常处理说明:

(1)str(e)

返回字符串类型,只给出异常信息,不包括异常信息的类型,如1/0的异常信息

'integer division or modulo by zero'

(2)repr(e)

给出较全的异常信息,包括异常信息的类型,如1/0的异常信息

"ZeroDivisionError('integer division or modulo by zero',)"

(3)e.message

获得的信息同str(e)

(4)采用traceback模块

  需要导入traceback模块,此时获取的信息最全,与python命令行运行程序出现错误信息一致。使用traceback.print_exc()打印异常信息到标准错误,就像没有获取一样,或者使用traceback.format_exc()将同样的输出获取为字符串。你可以向这些函数传递各种各样的参数来限制输出,或者重新打印到像文件类型的对象。