欢迎光临
我一直在努力开车

【Python】try…except…输出完整错误信息

用过try…except…的都知道,默认输出的错误信息只有一行提示,具体哪里出错可能还得找半天,那么如何输出完整的错误信息呢?

背景

在我们使用Python写脚本的时候,可能会经常用到try except,用于跳过一些无法避免的错误。但是用try except输出错误的话,只会有一行错误提示,如果只是一个脚本,那么可能还比较好找,但是如果是中大型项目中,只有一行错误提示,找错误位置那可能得要命。

因此有没有办法让try…except…输出完整的错误呢?

解决方法

方法是有,那就是用traceback模块,使用方法也很简单,我们建一个trace.py,内容为:

import traceback

try:
    1+'a'
except Exception as e:
    exstr = traceback.format_exc()
    print(exstr)

我们运行一下,就会输出完整的错误:

Traceback (most recent call last):
  File "track.py", line 5, in <module>
    1+'a'
TypeError: unsupported operand type(s) for +: 'int' and 'str'

相对使用print(e),只有一行TypeError: unsupported operand type(s) for +: 'int' and 'str'提示,使用traceback之后的错误提示明显更明显,我们也可以快速找到错误位置进行修改

赞(0)
未经允许不得转载:一个人的公交 » 【Python】try…except…输出完整错误信息

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

Onedrive个人网盘搭建

GitHub地址联系Abbey