欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python异常类型及处理、自定义异常类型、断言

程序员文章站 2023-02-04 19:31:29
异常类型(异常就是报错) 常见异常 NameError:名称错误 SyntaxError:语法错误 TypeError:类型错误 错误回溯 查看报错原因、报错的行,以及执行的代码 通过错误回溯,可以直接查看到这些内容 异常本身是类(基于继承) 在 Python 中所有的异常都是继承自 BaseExc ......
  1. 异常的概念、识别报错信息
  2. 异常处理
  3. 断言的基本使用

异常类型(异常就是报错)

常见异常

nameerror:名称错误    syntaxerror:语法错误    typeerror:类型错误

 

错误回溯

查看报错原因、报错的行,以及执行的代码

通过错误回溯,可以直接查看到这些内容

 

异常本身是类(基于继承)

Python异常类型及处理、自定义异常类型、断言

在 python 中所有的异常都是继承自 baseexception

分为四大类:

systemexit:python退出异常    keyboardinterrupt: 键盘打断(ctrl+c)

generatorexit: 生成器退出      exception: 普通异常

 

 

 

异常处理

try  except  else  finally

注意:try 后面必须跟上 except

try中的代码没有报错,才会执行else中的代码

有没有报错,都会执行finally中的代码

Python异常类型及处理、自定义异常类型、断言

Python异常类型及处理、自定义异常类型、断言

 

捕获具体的异常

except 后面写上捕获具体的异常类型(语法错误syntaxerror捕捉不到),通过as 把捕获的异常信息 储存到后面的变量里

代码中会出现的异常都是 exception 的子类, 因此在不确定异常类型时,except 中只需要在最后加上 exception即可(也捕捉不到语法错误) 

Python异常类型及处理、自定义异常类型、断言

Python异常类型及处理、自定义异常类型、断言

 

自定义异常类型

raise   主动抛出异常的类型

自定义的异常必须继承exception

Python异常类型及处理、自定义异常类型、断言

Python异常类型及处理、自定义异常类型、断言

 

 

 

断言assert

断言语句是将调试断言插入程序的一种便捷方式

assert 的语法规则

表达式返回 true  不报错

表达式返回 false  报错  报 assertionerror

Python异常类型及处理、自定义异常类型、断言

Python异常类型及处理、自定义异常类型、断言