如何在Python中打印异常?

1429 投票
11 回答
2027164 浏览
提问于 2025-04-15 14:38

我该如何在except:块中打印错误或异常信息呢?

try:
    ...
except:
    print(exception)

11 个回答

201

Python 2.6或更高版本中,代码看起来更简洁一些:

except Exception as e: print(e)

在旧版本中,代码依然很容易理解:

except Exception, e: print e
799

traceback模块提供了一些方法,用来格式化和打印异常信息以及它们的追踪记录。比如说,这个模块可以像默认的处理程序那样打印出异常信息:

import traceback

try:
    1/0
except Exception:
    traceback.print_exc()

输出结果:

Traceback (most recent call last):
  File "C:\scripts\divide_by_zero.py", line 4, in <module>
    1/0
ZeroDivisionError: division by zero
1932

对于Python 2.6及更高版本和Python 3.x:

except Exception as e: print(e)

对于Python 2.5及更早版本,请使用:

except Exception,e: print str(e)

撰写回答