什么时候“提升类,实例”有用?
答
没有优势。 raise Class, instance
是传统的表达和是completely equivalent到raise instance
。特别是,第一个符号是removed in Python 3 and replaced by the latter。
答
可以传递一个例外另:
exc = StopIteration('Iterator has already exhaused!')
try:
raise ValueError, exc
except ValueError, e:
print e.args[0]
良好的这种实际应用仍然躲避我,但肯定会有一些。
+2
这仍然与'raise ValueError(StopIteration('Iterator has been exhaused!'))''完全相同。 'e'是一个'ValueError','StopException'只是该构造函数的一个参数。 – bobince 2011-03-24 23:36:13
不完全相同 - 请参阅我的答案。等效必定是意图,但也产生了有趣的副作用。 – 9000 2011-03-19 14:53:16