Python入门100个实例(20)——对象的例子
从本实例学到什么
- 结合例子阐述对象是什么
- 对象的方法的例子
背景和例子
假设我们要开发学生成绩管理系统。这个软件具有以下功能:
1. 记录每个学生的语文、数学和英语成绩。
2. 求学生的总成绩。
3. 求学生的三门课平均成绩。
4. 统计学生的及格门数。
5. 对所有学生的成绩按总分从高到低排序。
6. 统计三门课都及格的总人数。
开发这个软件的话,把学生个体编制为对象是好做法。下面我们来看看,学生对象有什么。
学生对象
学生对象有多个属性组成,如下图所示。
数据属性有:
- 学号
- 姓名
- 性别
- 语文成绩
- 数学成绩
- 英语成绩
方法属性有:
- 求总分方法sum()
- 求平均分方法avg()
- 求及格门数方法pn()
为什么会有这些方法属性呢?这是因为,软件的功能需求决定了求总分、求平均分和求及格门数是基础操作。所谓基础操作,就是实现软件的各项功能的代码会反复调用的操作。这些会被反复调用的操作,应当构造为对象的方法。对象的方法是作用于对象数据属性之上的函数。
有了学生对象的例子,我们可以这样来回答对象是什么。
问:对象是什么?
答:在学生成绩管理系统中,会用一个个对象来表示一个个学生。
问:对象有什么?
答:学生对象有学号、姓名、性别、语文成绩、数学成绩和英语成绩这些数据属性,有求总分、求平均分等方法属性。
问:对象怎么存储?
答:对象会占据一片内存区域。每个属性在其中占据一部分存储区域。
Python语言的对象
Python程序中,任何值都存储为一个对象。每个对象有:
- 一个ID
- 一个类型
- 一个值
- 若干属性
对于学生对象,全部数据属性的组合可视为对象的值。
把一个值赋值给一个变量,实际上是使变量成为包含该值的对象的名字。
小结
本实例没有提供实例程序,而是结合一个例子来阐述对象是什么,对象的方法是什么。
今后会讲解如何写代码定义学生类和生成学生对象。
要理解Python语言的对象概念。但不要急于求成,现阶段没吃透没有关系,不耽误读程序和写程序就行。等到你自己可以举例说明对象这个概念的时候,你已经懂了。
Python入门100个实例(20)——对象的例子相关推荐
- python入门代码示例-Python入门100个实例(14)——换行符和制表符
从本实例学到什么 换行符是什么,怎么写和有什么用. 制表符是什么,怎么写和有什么用. 稍稍提及转义字符的概念. 示例程序代码 #例2-3-9 换行符和制表符 print("I'm Bob. ...
- Python入门100个实例(27)——len函数
从本实例学到什么 用len函数求列表元素个数 用len函数求字符串内字符个数 实例程序代码 #例3-3-2 len函数#len(列表)返回列表的元素个数(即列表的长度) motorcycles = [ ...
- Python入门100题之002:个税计算
题目: •企业发放的奖金根据利润提成. •利润(I)低于或等于10万元时,奖金可提10%: •利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%: • ...
- python入门基础知识实例-Python入门,原来如此简单!
Python 入门必会的就是基础知识学习,我也曾反复学习,而不入门.一天突然发现一个规律,豁然开朗,分享给大家! python最开始学的就是变量及变量的类型.常用的有字符.数字.列表.集合.元组.字典 ...
- Day7 零基础python入门100天Udemy训练营-Hangman Game 继续学习import, if else, while loop, for loop
Udemy- python零基础入门100天训练营 1.Hangman Game 简介 在一个全是单词的list里随机选择一个单词,由玩家来猜字母,如果猜对了,那么填充上空格,如果猜错了,就掉一条命, ...
- python入门小游戏代码20行,python入门小游戏代码
python入门可以做的小游戏 1.Python入门拼图小游戏简单介绍:将图像分为m×n个矩形块,并将图像右下角的矩形块替换为空白块后,将这些矩形块随机摆放成原图像的形状. 2.Python入门推箱子 ...
- python入门100例题-这 100 道 Python 题,拿去刷!!!
2020年,学 Python 还有价值吗? 根据 2020 年 2 月的 TIOBE 编程语言排行榜显示,Python仍然稳居第三位. 此排行榜排名基于互联网上有经验的程序员. 课程和第三方厂商的数量 ...
- Python入门100例(三)
点击领取粉丝福利 文章目录 前言 1. 题目描述 2. 程序分析 3. 程序源代码 4. 运行结果 5. 难度分析 6. 涉及知识点 结语 前言 本专栏从「基础」的编程知识开始,带你了解「基础算法」以 ...
- Python入门100例(二)
点击领取粉丝福利 文章目录 前言 1. 题目描述 2. 程序分析 3. 程序源代码 1. 数学流程图 2. 99乘法表 3. 水仙花数 4. 运行结果 5. 难度分析 6. 涉及知识点 结语 前言 本 ...
最新文章
- 百度天气api android,为什么百度apistore的天气api在Java项目中能用而在安卓项目中不能用?...
- Qt Designer设置背景图片、颜色不影响其它组件小技巧,控件层级设置,组件的继承,styleSheet设置样式。
- Android 中shape的使用(圆角矩形)
- Java实现接收数组参数
- 网络流之最大流算法(EdmondsKarp)
- UIView Methods
- BZOJ2157旅游——树链剖分+线段树
- python爬虫框架scrapy学习图片下载
- 【室内/外设计】天正T20V4.0软件安装教程
- MIMO基本技术原理
- 元气骑士如何获得机器人成就皮肤_元气骑士:新版本皮肤上架,隐藏皮肤这样才能获得,其实很简单...
- python安装requirement.txt
- MySQL数据库锁机制之MyISAM引擎表锁和InnoDB行锁详解
- 不得不看的Python入门知识
- ssh mysql 导出excel_使用ssh远程执行命令批量导出数据库到本地(转)
- java-通知-阿里云短信服务
- Android 谈谈自动化测试
- 免费用微软软件,中国学生享用DreamSpark完全攻略
- 21款数据恢复软件 – PC、安卓、IOS:支持你的各种情况数据恢复
- wins10系统更换固态硬盘经常假死如何解决
热门文章
- DCGAN生成二次元头像(Pytorch)
- 基于Python实现头像戴上圣诞帽案例
- 金三银四裁员潮?你工作找到怎么样?
- 美图秀秀专利---偏色检测算法研究
- 《Automatic Image-Based WasteClassification》论文笔记
- Java调用JS,JS调用JAVA
- OSG三维渲染引擎编程学习之三十六:“第四章:OSG几何体绘制” 之 “4.1 OSG基础绘图类”
- Navicat中查看MySQL数据库版本
- oracle实例查询IP,Oracle数据库中获取访问者的IP地址或主机名的方法
- 诺唯赞、澳华内镜登陆科创板;博腾生物与恺佧生物就mRNA技术达成合作 | 医药健闻...