Python基础学习笔记之——异常

异常

Python使用异常对象来表示异常状态,并在遇到错误时引发异常。异常对象未被处理(或捕获)时,程序将终止并显示一条错误信息(traceback)

1、自主地引发异常

1.1、raise语句

要引发异常,可使用raise语句,并将一个类(必须是Exception的子类)或实例作为参数。

一些内置异常类 说明
Exception 几乎所有的异常类都是从它派生来的
AttributeError 引用属性或给它赋值失败时引发
OSError 操作系统不能执行指定任务(如打开文件)时引发,有多个子类
IndexError 使用序列中不存在的索引时引发,为LookupError的子类
KeyError 使用映射中不存在的键时引发,是LookupError的子类
NameError 找不到名称(变量)时引发
SyntaxError 代码不正确时引发
TypeError 将内置操作或函数用于类型不正确的对象时引发
ValueError 将内置操作或函数用于这样的对象时引发:其类型正确但包含的值不合适
ZeroDivisionError 在除法或求模运算的第二个参数为零时引发

1.2、自定义异常类

就跟创建其他类一样,但务必直接或间接地继承Execption。


2、捕获异常

异常有趣的地方是可对其进行处理,通常称为捕获异常,使用try/except语句

异常从函数向外传播到调用函数的地方。如果在这里也没有被捕获,异常将向程序的最顶层传播。

2.1、不提供任何参数

捕获异常后,如果要重新引发它(即继续向上传播),可调用raise且不提供任何参数(也可以显示地提供捕获到的异常)。

2.2、最后

finally语句,无论异常是否发生,finally语句的内容都将执行

猜你喜欢

转载自blog.csdn.net/qq_36879493/article/details/107835849