自訂例外
你不一定只能依賴像 IndexError 這樣的內建例外;你也可以定義更貼近你應用情境的自訂例外。你還能建立例外的繼承階層。要定義一個例外很簡單:宣告一個類別,並讓它繼承自內建的 Exception 類別或其子類別即可。
在本課程前面,你定義過一個 Employee 類別,並用 print 敘述與預設值來處理錯誤,例如:建立薪資低於最低門檻的員工,或給予過大的加薪。更好的做法是使用例外處理——因為這些錯誤是我們應用程式特有的(不像除以 0 這種普遍性的錯誤),因此很適合用自訂例外類別來處理。
本練習屬於課程
Python 物件導向程式設計入門
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Define SalaryError inherited from ValueError
____
# Define BonusError inherited from SalaryError
____