我知道,如果我想重新引发异常,我raise
会在相应的except
块中简单地使用不带参数的方法。但是给定一个嵌套表达式,例如
try:
something()
except SomeError as e:
try:
plan_B()
except AlsoFailsError:
raise e # I'd like to raise the SomeError as if plan_B()
# didn't raise the AlsoFailsError
如何在SomeError
不破坏堆栈跟踪的情况下重新提升?raise
在这种情况下,独自一人会重新筹集最近的AlsoFailsError
. 或者我怎样才能重构我的代码来避免这个问题?