【发布时间】:2016-08-25 11:19:36
【问题描述】:
所以我在其他地方看到过使用以下内容重新引发异常。
try:
whatever()
except:
raise
重新引发异常的目的是什么?无论如何,一个未被捕获的异常肯定会上升到顶部吗?即:
try:
int("bad")
except:
raise
与以下输出相同:
int("bad")
即我在控制台中收到一个 ValueError。
【问题讨论】:
-
它在你做其他事情时很有用 - 例如打印出额外的调试信息或清理文件
-
通常您不会仅重新引发异常。