异常
-
什么是异常
程序在执行过程中遇见错误语法导致程序崩溃
-
异常捕获
通过异常捕获的程序让本身会异常的代码能够继续执行
-
怎么捕获异常
-
捕获代码段1中所有异常
try:
代码段1
except:
代码段2
说明:try、except - 关键字,固定写法
代码段1 - 需要捕获异常的代码
代码段2 - 捕获到异常之后需要执行的代码
执行过程:先执行代码段1,若执行时遇见异常程序不会报错,会直接执行代码段2,然后接着执行后面的语句
-
捕获代码段1中的指定异常
try:
代码段1
except:异常类型
代码段2
说明:异常类型 - 类,必须是Exception类的子类(系统定义的错误类型、自定义的错误类型)
执行过程:执行代码段1,执行时若出现异常则判断是否符合指定的异常类型,若符合则执行代码段2,否则报错
-
同时捕获代码段1中的多种异常类型,进行相同操作
try:
代码段1
except (异常类型1,异常类型2,…):
代码段2
-
同时捕获代码段1中多种异常类型,并进行不同操作
try:
代码段1
except 异常类型1:
代码段11
except 异常类型2:
代码段22
…
-
-
finally
上面四种捕获异常的方式的最后都可以添加一个finally语句,不过捕获异常的代码段1中出现什么情况finally语句中的代码都会执行 。
try:
代码段1
except:
代码段2
finally:
代码段3
继承
-
什么是继承
继承就是让子类直接拥有父类的属性和方法
子类 - 继承者
父类 - 被继承者
python中所有的类都是直接或间接地继承字object类(object是python中的基类)
-
语法
class 类名(父类名):
类的内容
定义类时若未写父类,则默认其父类为object
给子类添加属性和方法
-
添加属性和方法
-
添加方法和类属性 - 直接在子类中添加
-
添加对象属性
子类通过继承父类__init__方法来继承父类的对象属性 若要在子类中添加对象属性,需要在子类的__init__方法中通过super去调用父类的__init__方法 super().__init__ 在子类中可以通过super()去调用父类的任意方法
-
-
类中方法调用过程
通过类或对象调用方法时,先看当前类中是否有这个方法,若没有则去查看其父类是否有这个方法,若没有则即系逐层向上依次查找,若找至object都没有这个方法则报错
自定义异常及抛出异常
-
抛出异常 - 主动让程序崩溃
语法:
raise 异常类型
raise - 关键字,固定写法
异常类型 - 类,必须是Exception的子类
-
自定义异常
定义一个类,继承Exception
class 类名(Exception):
代码段