9.2.2 自定义异常类
在很多时候需要自定义异常类。任何一个异常必须是Exception的子类。最简单的自定义异常类就是一个空的Exception类的子类。
class MyException(Exception):
pass
下面用一个科幻点的例子来演示如何自定义异常类,以及如何抛出自定义异常。
[例 9.1] 本例定义一个曲速引擎(超光速引擎)过载的异常类,当曲速达到10或以上值的时候就认为是过载,这时会抛出异常。
# 定义曲速引擎过载的异常类
class WarpdriveOverloadException(Exception):
pass
# 当前的曲速值
warpspeed = 12
# 当曲速为10或以上的值时,认为是曲速引擎过载,应该抛出异常
if warpspeed &g