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()