python捕捉错误 exception,traceback和sys.exc_info()

本文介绍了Python中错误处理的相关概念,包括exception、traceback和sys.exc_info()的区别。异常(exception)用于查看错误提示,traceback提供具体的错误行信息,其中print_exc()和format_exc()分别用于打印和返回错误信息字符串。sys.exc_info()则返回一个元组,包含异常类型、值和包含详细位置信息的traceback对象。通过sys.exc_info(),我们可以自定义错误信息的显示格式。
摘要由CSDN通过智能技术生成

一、exception,traceback和sys.exc_info()区别

1、exception 能看到错误提示
2、traceback能看到具体的错误在哪一行
traceback.prit_exc()和traceback.format_exc()区别:

format_exc() 返回字符串
  print_exc() 直接给打印出来
  故 traceback.print_exc() 与 print (traceback.format_exc()) 显示效果是一样的
  PS:但print_exc()还可以接受file参数直接写入到一个文件中。
  例如:traceback.print_exc(file=open(‘log.log’, mode=‘a’, encoding=‘utf-8’))
  将文件写入到了log.log文件中

3、sys.exc_info能看到错误类型和错误提示。
sys.exc_info()返回的值是一个元组,其中第一个元素,exc_type是异常的对象类型,exc_value是异常的值,exc_tb是一个traceback对象,对象中包含出错的行数、位置等数据。
sys.exc_info() 返回错误信息方法
返回 (type, value, traceback)实际为一个元组 type为异常类型, value为异常的参数(通常为异常错误的信息), traceback调用堆栈封装在最初发生异常的地方

其中traceback中还包含了更为丰富的信息,比如文件名,行号等等。如果觉得系统默认的traceback打

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值