异常处理

异常处理机制允许程序在遇到异常时能选择处理异常并继续运行,Python中使用try ... except ... finally ...语句进行异常的捕获和处理,这篇笔记我们介绍Python中异常处理相关的用法。

捕获异常

下面例子我们使用try ... except ... finally ...语句对异常进行处理。

try:
    i = 1 / 0
except ZeroDivisionError as e:
    print(e)
finally:
    print("end")

和其他语言一样,运行时出错就会进入except语句,而无论执行成功与否,都会执行finally语句。

抛出异常

Python使用raise关键字抛出异常,下面是一个例子。

class MyError(Exception):
    pass


def div(a, b):
    if b == 0:
        raise MyError("Error!!!")


div(1, 0)

代码中我们继承ZeroDivisionError定义了自己的异常类,然后使用raise关键字抛出异常。

Python的异常继承体系

Python中BaseException是所有异常的基类,它继承object,我们自定义异常应继承Exception及其子类。

作者:Gacfox
版权声明:本网站为非盈利性质,文章如非特殊说明均为原创,版权遵循知识共享协议CC BY-NC-ND 4.0进行授权,转载必须署名,禁止用于商业目的或演绎修改后转载。