自訂例外
你不必只依賴像 IndexError 這樣的內建例外;你可以定義更貼近你的應用情境的自訂例外。你也可以定義例外的繼承階層。要定義一個例外,只需要建立一個繼承自內建 Exception 類別或其子類別的類別即可。
在第 1 章中,你定義了 Employee 類別,並用 print 敘述與預設值來處理某些錯誤,例如建立薪資低於最低標準的員工,或給出過大的加薪幅度。更好的作法是使用例外處理。因為這些錯誤是本應用程式特有的(不像除以 0 這種普遍性的錯誤),所以使用自訂例外類別更合理。
本練習屬於課程
Python 物件導向程式設計
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Define SalaryError inherited from ValueError
____
# Define BonusError inherited from SalaryError
____