gpt4 book ai didi

python - 在 Python 2 的异常中处理错误?

转载 作者:太空宇宙 更新时间:2023-11-04 08:39:15 25 4
gpt4 key购买 nike

我的代码会像这样引发异常:

try:
causeEitherError1orError2
except Error1:
handle Error1
cause Error2
except Error2:
handle Error2

尝试操作 A 会导致 Error1 或 Error2。处理 Error1 有时会导致 Error2。当 Error2 可能由原始尝试或错误 1 ​​引起时,我如何处理 Error1 和 Error2?

最佳答案

总的来说,这似乎是一个复杂的设计,但您确实可以使用一个 except 大括号捕获多个异常。您还可以根据自己的优势嵌套 try-except 处理程序。一种可能的设计是:

try:
... # action A
except (Error1, Error2) as e:
try:
... # handle e
except Error2 as f:
... # handle f

如果您想辨别第一次引发的是什么Exception,您始终可以检查类型:

print(type(e)) # prints Error1 or Error2 depending on what was raised

或者,更准确地说,通过 isinstance 检查缩小范围:

if isinstance(e, Error1):
... # handle e as Error1
else:
... # handle e as Error2

关于python - 在 Python 2 的异常中处理错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46043583/

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