gpt4 book ai didi

Python 引发/捕获异常

转载 作者:太空狗 更新时间:2023-10-29 17:37:07 27 4
gpt4 key购买 nike

我想知道在 python 中是否可以在一个 except block 中引发异常并在稍后的 except block 中捕获它。我相信其他一些语言默认会这样做。

这是它的样子"

try:
something
except SpecificError as ex:
if str(ex) = "some error I am expecting"
print "close softly"
else:
raise
except Exception as ex:
print "did not close softly"
raise

我希望 else 子句中的 raise 触发最终的 except 语句。

实际上我没有打印任何东西,只是记录它,我想记录更多,以防这是我不期望的错误消息。然而,这个额外的日志记录将包含在最终的 except 中。

我相信一个解决方案是创建一个函数,如果它没有软关闭,它会在最后的 except 和 else 子句中调用。但这似乎没有必要。

最佳答案

像这样写 2 个 try...except block 怎么样:

try:
try:
something
except SpecificError as ex:
if str(ex) == "some error I am expecting"
print "close softly"
else:
raise ex
except Exception as ex:
print "did not close softly"
raise ex

关于Python 引发/捕获异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6299756/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com