什么时候“提升班级,实例”有用吗?

时间:2011-03-19 13:40:29

标签: python

如果您有一个异常实例,为什么还需要指定它的类?

与简单raise instance相比,有什么优势?

3 个答案:

答案 0 :(得分:2)

没有理由真的使用它。在异常必须是类实例之前,这是古老的用法,并且它已经在Python 3中消失了。

答案 1 :(得分:2)

没有优势。 raise Class, instance是一个遗留表达式,completely equivalentraise instance。特别是,第一个符号是removed in Python 3 and replaced by the latter

答案 2 :(得分:1)

您可以为另一个例外传递一个例外:

exc = StopIteration('Iterator has already exhaused!')
try:
  raise ValueError, exc
except ValueError, e:
  print e.args[0]

虽然必须有一些,但我仍然无法实现这方面的实际用途。