当我在python中处理异常时
try:
a = dict()
a[1]
except Exception as e:
print str(e)
打印
1
我希望它能打印
KeyError: 1
有没有办法检索默认错误消息?
答案 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)
这不能完全产生您想要的输出,但是可能足够接近了?