面向对象与异常处理
概要
-
面向对象
-
异常处理
详情
-
面向对象
1、对象的概念
对象是数据与功能的结合体。
Python中所有的程序都可以用"数据"和"功能"结合的形式表达。
类是多个对象相同数据和功能的结合体。
# 在程序中先定义类,才能产生对象 # 定义类的语法结构 class 类名: #类名的首字母最好用大写 数据1 #缩进的代码块表示类的对象的相同数据和功能 def 功能1(self): #类中的函数称为功能/方法 pass eg: class Student: name = '' age = 18 def chooseCourse(self): print('我要选择的课程') 可以通过类名加括号的形式调用类产生对象,即实例化 #每次类的实例化都会产生一个新的对象 obj01 = Student() obj02 = Student() obj03 = Student() #上述是三个不同的对象,调用id()方法的返回值不同

2、访问数据和功能
类的属性包含在类中定义的变量和函数,即类的数据和功能。
类中定义的'变量/函数'可以共享给所有该类产生的对象使用。 对象访问时,会先从自己的名称空间查找自身独有元素,未找到则去类的名称空间查找共有元素。 #访问方法 1.类名.__dict__['属性名'] 2.类名/对象名.数据名 类名/对象名.功能名()

3、独有的数据
1.类名.__dict__
返回类内部所有的'共有'元素 2.对象名.__dict__
返回该对象'独有'的元素 3.对象调用类中定义的方法时会自动将'对象本身'当做第一个位置参数传入 4.形参self指代当前对象


4、继承
1.父类的概念 多个类相同的数据和功能的结合体 2.继承 一个类可以继承多个父类从而获得多个父类的属性 #语法 class 类名(父类名): 独有属性 或者 class 类名(父类名1,父类名2,...): 独有属性 3.对象属性的查找顺序 自身名称空间 ---> 产生该对象的类 ---> 该类的父类


-
异常处理
异常分为两种:语法错误、逻辑错误
# 1、语法错误 不被允许,严重影响程序运行,应立即修改,在Python中以红色下划曲线表示。 # 2、逻辑错误 可被允许少量出现,又称Bug。 语法结构 try: 被检测的代码段 except 错误类型 as 变量名: 出现对应类型异常时执行的分支代码(变量名指向具体错误信息) ''' Exception/BaseException可指任何一种错误类型 try、exception之间被检测的代码段尽可能少 异常在程序中只可少量使用(尽量减少可预知错误的出现) ''' # 3、其他关键字 else 被检测的代码段未出现任何异常时会执行,与for/while使用场景类似 finally 被检测的代码段执行完毕后,无论异常与否都会执行finally后代码 '''异常类型正确或选择万能异常时才能正确执行分支代码,图示如下'''
无异常处理,直接报错

异常类型正确,处理对应类型的异常

异常类型错误,不会处理不符合的异常

万能异常,可以处理任意类型的异常


浙公网安备 33010602011771号