Python入门100个实例(20)——对象的例子

从本实例学到什么

  1. 结合例子阐述对象是什么
  2. 对象的方法的例子

背景和例子

假设我们要开发学生成绩管理系统。这个软件具有以下功能:
1. 记录每个学生的语文、数学和英语成绩。
2. 求学生的总成绩。
3. 求学生的三门课平均成绩。
4. 统计学生的及格门数。
5. 对所有学生的成绩按总分从高到低排序。
6. 统计三门课都及格的总人数。

开发这个软件的话,把学生个体编制为对象是好做法。下面我们来看看,学生对象有什么。

学生对象

学生对象有多个属性组成,如下图所示。
对象是什么
数据属性有:
- 学号
- 姓名
- 性别
- 语文成绩
- 数学成绩
- 英语成绩

方法属性有:
- 求总分方法sum()
- 求平均分方法avg()
- 求及格门数方法pn()

为什么会有这些方法属性呢?这是因为,软件的功能需求决定了求总分、求平均分和求及格门数是基础操作。所谓基础操作,就是实现软件的各项功能的代码会经常用到的操作。对于这样的作用于对象数据属性之上的操作,就值得编制为对象的方法。

有了学生对象的例子,我们可以这样来回答对象是什么。
问:对象是什么?
答:在学生成绩管理系统中,会用一个个对象来表示一个个学生。
问:对象有什么?
答:学生对象有学号、姓名、性别、语文成绩、数学成绩和英语成绩这些数据属性,有求总分、求平均分等方法属性。
问:对象怎么存储?
答:对象会占据一片内存区域。每个属性在其中占据一部分存储区域。

Python语言的对象

Python程序中,任何值都存储为一个对象。每个对象有:

  • 一个ID
  • 一个类型
  • 一个值
  • 若干属性

对于学生对象,全部数据属性的组合可视为对象的值。

把一个值赋值给一个变量,实际上是使变量成为包含该值的对象的名字。

小结

本实例没有提供实例程序,而是结合一个例子来阐述对象是什么,对象的方法是什么。
今后会讲解如何写代码定义学生类和生成学生对象。
要理解Python语言的对象概念。但不要急于求成,现阶段没吃透没有关系,不耽误读程序和写程序就行。等到你自己可以举例说明对象这个概念的时候,你已经懂了。

猜你喜欢

转载自blog.csdn.net/yedouble/article/details/81234298