模块5 Python的面向对象编程电子课件 Python程序设计基础 中职 高二 工信版

2022-12-27
| 76页
| 178人阅读
| 0人下载
普通

内容正文:

模块五 Python的面向对象编程 什么是Python? 如何搭建Python的简单开发环境? 了解Python的基本语法。 什么是类、实例对象、对象属性? 什么是数据的封装、访问权限、继承、多态? 如何获取对象信息? 如何使用_slots_、@property? 什么是多重继承、定制类? 如何使用枚举类、元类? 学习要点 01 02 03 面向对象的基础编程 面向对象的高级编程 实训:对交通工具进行分类并进行面向对象的编程 01 面向对象的基础编程 5.1面向对象的基础编程 程序设计思想有两种:第一种是面向过程的程序设计,第二种是面向对象的程序设计。 面向过程的程序设计把计算机程序视为一系列的命令集合,每一条命令又可以是对某个函数的调用,而函数又是若干条命令封装成的一个调用单元,函数又可以调用子函数,即面向过程的程序是按照某种逻辑关系调用一系列的函数。 面向对象的程序设计是把对象作为程序的基本单元,一个对象包含数据和操作数据的函数。而计算机程序则被视为一组对象的集合,而每个对象都可以接收其他对象发过来的消息,并处理这些消息,计算机程序的执行就是一系列消息在各个对象之间传递。 Python中的数据类型都是对象,也可以自定义对象或称为自定义数据类型。自定义的对象数据类型就是面向对象中的类(class)的概念。 5 5.1面向对象的基础编程 【例5-1】分别用面向过程和面向对象的方式来处理某个学生的成绩。 (1)面向过程的处理方式。 #用一个dict表示学生的成绩 student1 = { 'name': 'Mike','score': 98 } student2= { 'name': 'Jone','score': 81 } #函数print_score实现打印学生的成绩 def print_score(std): print("%s: %s" % (std['name'],std['score'])) #打印出student1和student2的成绩信息 print_score(student1) print_score(student1) #结果为 Mike: 98 Jone: 81 6 (2)面向对象的处理方式。用面向对象的程序设计思想来处理这个问题,首先思考的不是程序的执行流程,而是Student这种数据类型应该被视为一个对象,这个对象拥有name和score这两个属性(property)。如果要打印一个学生的成绩,首先必须创建出这个学生对应的对象,然后给对象发一个print_score消息,让对象自己把自己的数据打印出来。 5.1面向对象的基础编程 7 5.1面向对象的基础编程 #创建Student对象(或者创建Student数据类型),对象(数据类型)里包含name、score两个属性和 #一个数据处理方法print_score class Student(object): def __init__(self,name,score):#定义name、score两个属性 self.name = name self.score = score def print_score(self):#定义数据处理方法 print ("%s: %s" % (self.name,self.score)) #利用定义的Student对象(Student数据类型)创建两个学生实例对象student1和student2 student1 = Student('Mike',98) student2 = Student('Jone',81) #分别向student1、student2发送消息,让对象自己把自己的数据打印出来 student1.print_score() student2.print_score() #结果为 Mike: 98 Jone : 81 8 面向对象的设计思想是从自然界中来的,因为在自然界中,类(class)和实例(instance)的概念是很自然的。class是一种抽象概念,如我们定义的类Student,是指学生这个概念,而实例(instance)则是一个个具体的Student,如Mike和Jone是两个具体的Student。 所以,面向对象的设计思想是抽象出class,根据class创建instance。 面向对象的抽象程度又比函数要高,因为一个class既包含数据,又包含操作数据的方法。 5.1面向对象的基础编程 9 5.1面向对象的基础编程 5.1.1类和实例 类(class)和实例(instance)是面向对象程序设计中的两个最重要的概念。类是对客观事物的抽象的模板

资源预览图

模块5 Python的面向对象编程电子课件 Python程序设计基础 中职 高二 工信版
1
模块5 Python的面向对象编程电子课件 Python程序设计基础 中职 高二 工信版
2
模块5 Python的面向对象编程电子课件 Python程序设计基础 中职 高二 工信版
3
模块5 Python的面向对象编程电子课件 Python程序设计基础 中职 高二 工信版
4
模块5 Python的面向对象编程电子课件 Python程序设计基础 中职 高二 工信版
5
模块5 Python的面向对象编程电子课件 Python程序设计基础 中职 高二 工信版
6
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。