如何在异常处理中获取python默认异常消息

时间:2014-11-22 04:10:57

标签: python exception

当我在python中处理异常时

try:
    a = dict()
    a[1]
except Exception as e:
    print str(e)

打印

1

我希望它能打印

KeyError: 1

有没有办法检索默认错误消息?

2 个答案:

答案 0 :(得分:2)

而不是:

print str(e)

这样做:

print(type(e).__name__ + ": " + str(e))

或只是这个:

print(type(e).__name__, e)

答案 1 :(得分:0)

如果将str(e)替换为repr(e),Python 2将产生KeyError(1,),而Python 3将产生KeyError(1)

这不能完全产生您想要的输出,但是可能足够接近了?

相关问题