Python 异常报告类型:它是什么意思?
假设我有这个Python 异常报告类型:它是什么意思?,python,Python,假设我有这个 try: #some code here except Exception, e: print e print repr(e) 从这段代码中我得到 >> >> <exceptions.Exception instance at 0x2aaaac3281b8> > >> 为什么我没有任何异常消息,而且,第二条消息是什么意思?您有一个异常,它生成一个空的str(即str(e)是空的)。从您发布的有限代码中无法了解原因,您必须查看回溯以了
try:
#some code here
except Exception, e:
print e
print repr(e)
从这段代码中我得到
>>
>> <exceptions.Exception instance at 0x2aaaac3281b8>
>
>>
为什么我没有任何异常消息,而且,第二条消息是什么意思?您有一个异常,它生成一个空的
str
(即str(e)
是空的)。从您发布的有限代码中无法了解原因,您必须查看回溯以了解异常来自何处
至于repr()
,它的目的是生成一个字符串,该字符串可能很难看,从而可以重建对象,而不是进行漂亮的打印。这不是打印异常所需的。在中抛出了一个派生对象#这里的一些代码
。此对象有一个返回空字符串或空格的\uuuu str\uuu
方法,没有\uuuu repr\uu
方法
看
产出
Something useful
SomeClass()
这取决于一些代码是什么。@JohnZwinck:是一个更一般的问题。不要把重点放在代码上,因为代码有很多逻辑限制,我没有时间解释如何查看回溯?
这不是打印异常所需的
-视情况而定。我发现用repr
打印的其他信息很有用
Something useful
SomeClass()