前言

有时候python自带异常不够用,如同java,python也可以自定义异常,并且可以手动抛出。注意,自定义异常只能由自己抛出。python解释器是不知道用户自定义异常是什么鬼的。

raise语句

主动抛出异常。

格式:

主动抛出异常终止程序

raise 异常名称(‘异常描述’)

主动抛出这个异常,并加以解释。

自定义异常

python的异常分为两种.

1、内建异常,就是python自己定义的异常。

2、不够用,用户自定义异常,

首先看看python的异常继承树

我们可以看到python的异常有个大基类。然后继承的是Exception。所以我们自定义类也必须继承Exception。

抛出异常、用try-except抛出

在这里给一个简单的自定义异常类模版

补充知识:Python自定义异常及常见异常类型

对于try…except…else…finally

由程序可以看出如果try部分顺利执行,则会执行else部分,如果try部分出现错误则会执行except部分,但是两种情况最后都输出了finally部分。当然,else和finally部分是可以省略的。我们可以自定义输出错误类型,需要用到raise函数。

raise抛出异常只适用于python的标准异常类