1
在我的示例中,我有一個自定義的異常類MyCustomException
,並且在主體中,我將整數a
除以零,這會引發ZeroDivisionError
異常。除了區塊外,我抓到ZeroDivisionError
,然後從err
增加MyCustomException
;這會產生一個鏈式異常,我自己的,加上err
中的一個。如何處理除了塊之外的異常鏈接
現在我該如何捕獲鏈式異常或鏈式異常如何工作? Python不會讓我在我的代碼中使用except
塊來捕獲MyCustomException
塊。
class MyCustomException(Exception):
pass
a=10
b=0
reuslt=None
try:
result=a/b
except ZeroDivisionError as err:
print("ZeroDivisionError -- ",err)
raise MyCustomException from err
except MyCustomException as e:
print("MyException",e) # unable to catch MyCustomException
我得到的輸出,當我執行它:
ZeroDivisionError -- division by zero
Traceback (most recent call last):
File "python", line 13, in <module>
MyCustomException