后浪Python --- 异常捕获

一.什么是异常

程序在执行过程中因为遇到错误的语法导致程序奔溃

二、什么是异常捕获

通过异常捕获的程序让本身异常的代码能够继续执行

三、怎么捕获异常

  1. 语法一
    try:
        代码段1
    except:
        代码段2

说明:

try、except - 关键字, 固定写法
代码段1 - 需要捕获异常的代码段
代码段2 - 捕获异常后会执行的代码

执行过程:

先执行代码段1, 如果执行过程中出现了异常, 程序不崩溃, 直接执行代码段2, 然后接着执行代码段2, 然后接着执行后续其他语句

注意: 此方法捕获代码段1中所有的异常

  1. 语法二
    try:
        代码段1
    except 异常类型:
        代码段2

说明:

异常类型 - 类,必须是Exception类的子类(系统提供的错误类型: KeyError、IndexError、TypeError或者自定义错误类型)

执行过程:

先执行代码段1, 执行过程中如果出现异常就判断出现的异常类型和except后面的异常类型是否相等, 如果相等程序不报错,直接执行代码段2, 否则程序直接崩溃。

注意: 此方法, 捕获代码段1中的指定异常

  1. 语法三
    try:
        代码段1
    except (异常类型1, 异常类型2,…):
        代码段2

注意:同时捕获代码段1中的多种异常, 对不同的异常的处理相同

  1. 语法四
    try:
        代码段1
    except 异常类型1:
        代码段11
    except 异常类型2:
        代码段22

注意: 同时捕获代码段1中的多种异常, 针对不同的异常做不同的处理

四、finally

上面的4种捕获异常的结构的最后都可以添加一个finally语句

比如:
try:
    代码段1
except:
    代码段2
finally:
    代码段3

不管需要捕获异常的代码段1出现了什么情况, finally后面的代码段3都会执行

五、 什么是继承

继承就是让子类直接拥有父类的属性和方法
子类 - 继承者
父类 - 被继承者

注意:python中所有的类都是直接或者间接继承自object类(object是python的基类)

六、继承的语法

class 类名(父类):
类的内容

注意:定义类的时候如果没有写父类, 父类就是object

七、添加属性和方法

  1. 添加方法和类属性 - 直接在子类中添加
  2. 添加对象属性
    子类是通过继承父类的__init__方法来继承父类的对象属性
  3. 调用当前类的父类的__init__方法
    super().init()

注意:子类是通过继承父类的__init__方法来继承父类的对象属性,如果要在子类中添加对象属性, 需要在子类的__init__方法中通过super()去调用父类的__init__方法

八、类中方法的调用过程

通过类或者对象调用方法的时候, 先看当前类中有没有这个方法, 如果有直接调用; 没有就看父亲中有没有这个方法,

如果有调用父类的方法; 如果没有就看父类的父类有没有,…以此类推,如果找到object都没有这个方法才报错

九、抛出异常

主动让程序崩溃

语法:

raise 异常类型

说明:

raise - 关键字, 固定写法
异常类型 - 类, 必须是Exception的子类

十、自定义异常

定义一个类, 继承Exception

注意:__str__的返回值必须是字符串,在异常类型中返回值就是抛出异常的时候的提示信息

©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页