Python第七章实验报告
一.实验名称:《零基础学Python》第7章 面向对象程序设计
二.实验环境:IDLE Shell 3.9.7
三.实验内容:5道实例、4道实战
四.实验过程:
- 实例01 创建大雁类并定义飞行方法

点击查看代码
class Geese:
'''大雁类'''
def __init__(self,beak,wing,claw):
print("我是大雁类!我有以下特征:")
print(beak)
print(wing)
print(claw)
def fly(self,state):
print(state)
'''************调用方法*********'''
beak_1="喙的基部较高,长度和头部的长度几乎相等"
wing_1="翅膀长而尖"
claw_1="爪子是蹼状的"
wildGoose=Geese(beak_1,wing_1,claw_1)
wildGoose.fly("我飞行的时候,一会儿排成个人字,一会儿排成个一字")
、
运行结果:

- 实例02 通过类属性统计类的实例个数

点击查看代码
class Geese:
'''雁类'''
neck="脖子较长"
wing="振翅频率高"
leg="腿位于身体的中心支点,行走自如"
number=0
def __init__(self):
Geese.number+=1
print("\n我是第"+str(Geese.number)+"只大雁,我属于雁类!我有以下特征:")
print(Geese.neck)
print(Geese.wing)
print(Geese.leg)
list1=[]
for i in range(4):
list1.append(Geese())
print("一共有"+str(Geese.number)+"只大雁")
、
运行结果:

- 实例03 在模拟电影点播功能时应用属性

点击查看代码
class TVshow:
list_film=["战狼2","红海行动","西游记女儿国","熊出没·变形记"]
def __init__(self,show):
self.__show=show
@property
def show(self):
return self.__show
@show.setter
def show(self,value):
if value in TVshow.list_film:
self.__show="您选择了《"+value+" 》,稍后将播放"
else:
self.__show="您点播的电影不存在"
tvshow=TVshow("战狼2")
print("正在播放:《",tvshow.show,"》")
print("您可以从",tvshow.list_film,"中选择要点播放的电影")
tvshow.show="红海行动"
print(tvshow.show)
、
运行结果:

- 实例04 创建水果基类及其派生类

点击查看代码
class Fruit:
color="绿色"
def harvest(self,color):
print("水果是:"+color+"的!")
print("水果已经收获......")
print("水果原来是:"+Fruit.color+"的!")
class Apple(Fruit):
color="红色"
def __init__(self):
print("我是苹果")
class Orange(Fruit):
color="橙色"
def __init__(self):
print("\n我是橘子")
apple=Apple()
apple.harvest(apple.color)
orange=Orange()
orange.harvest(orange.color)
、
运行结果:

- 实例05 在派生类中调用基类的__init__()方法定义类属性

点击查看代码
class Fruit:
def __init__(self,color="绿色"):
Fruit.color=color
def harvest(self,color):
print("水果是:"+self.color+"的!")
print("水果已经收获......")
print("水果原来是:"+Fruit.color+"的!")
class Apple(Fruit):
color="红色"
def __init__(self):
print("我是苹果")
super().__init__()
class Sapodilla(Fruit):
def __init__(self,color):
print("\n我是人参果")
super().__init__(color)
def harvest(self,color):
print("人参果是:"+color+"的!")
print("人参果已经收获......")
print("人参果原来是:"+Fruit.color+"的!")
apple=Apple()
apple.harvest(apple.color)
sapodilla=Sapodilla("白色")
sapodilla.harvest("金黄色带紫色条纹")
、
运行结果:

- 实战01 修改手机默认语言

代码如下:
点击查看代码
class Smartphone:
'''手机类'''
Yuyan="中文"
def __init__(self):
print("智能手机的默认语言为英文")
print("将智能手机的语言设置为"+Smartphone.Yuyan)
smartphone=Smartphone()
、
运行结果:

- 实战02 给信用卡设置默认密码

代码如下:
点击查看代码
class CreditCard:
'''信用卡类'''
def __init__(self,number,password="123456"):
if password=='123456':
print("信用卡"+number+"的默认密码为"+password)
else:
print("重置信用卡"+number+"的密码为"+password)
CreditCard("4013735633800642")
CreditCard("4013735633800642","168779")
、
运行结果:

- 实战03 打印每月销售明细

代码如下:
点击查看代码
class Sale:
'''功能:模拟实现输出进销存管理系统中的每月销售明细'''
Details = (('T0001', '笔记本电脑'), ('T0002', '华为荣耀6X'), ('T0003', 'iPad'), ('T0004', '华为荣耀V9'), ('T0005', 'MacBock'))
def __init__(self, month):
if month=='2':
print('2月份的商品销售明细如下:')
for i in range(len(Sale.Details)):
print('{}{} {}{}'.format('商品编号:',Sale.Details[i][0],'商品名称:',Sale.Details[i][1]))
months = input('\n请输入要查询的月份(比如1、2、3等):')
sale = Sale(months)
else:
print('\n该月份没有销售数据或者输入月份有误!\n')
months = input('请输入要查询的月份(比如1、2、3等):')
sale= Sale(months)
print('——————————销售明细——————————')
months =input('请输入要查询的月份(比如1、2、3等):')
sale=Sale(months)
、
运行结果:

- 实战04 模拟电影院的自动售票机选票页面

代码如下:
点击查看代码
class Film:
'''功能:模拟电影院自动售票机中自动选择电影场次的页面'''
filmname=''
zw=''
cci=''
films=(('1、','《长津湖》'),('2、','《战狼2》'),('3、','《红海行动》'))
def __init__(self):
print('\n欢迎使用自动售票机~~')
pass
def Films(self,filmname):
Film.filmname = filmname
print('已选电影:'+filmname)
pass
def cci(self,cci):
Film.cci="2018.4.12 "+cci
print('电影场次:' + cci)
def zw(self,zw):
Film.zw= zw
print('选择座位:' + zw)
pass
def piao(self):
print("电影:"+Film.filmname)
print("播出时间:" + Film.cci)
print("座位:" + Film.zw)
pass
film= Film()
print('\n请选择正在上映的电影:1、《长津湖》 2、《战狼2》 3、《红海行动》')
film.Films('《长津湖》')
print('\n请选择电影播放场次:1、9:30 2、10:40 3、12:00')
film.cci('10:40')
print('\n请选择座位剩余座位:10-01,10-02,10-03,10-04')
film.zw('10-3')
print('\n正在出票。。。\n')
film.piao()
print('\n出票完成,请别忘记取票')
、
运行结果:

Python第七章实验报告的更多相关文章
- 简学Python第七章__class面向对象高级用法与反射
Python第七章__class面向对象高级用法与反射 欢迎加入Linux_Python学习群 群号:478616847 目录: Python中关于oop的常用术语 类的特殊方法 元类 反射 一.P ...
- <automate the boring stuff with python>---第七章 正则实例&正则贪心&匹配电话号码和邮箱
第七章先通过字符串查找电话号码,比较了是否使用正则表达式程序的差异,明显正则写法更为简洁.易扩展.模式:3 个数字,一个短横线,3个数字,一个短横线,再是4 个数字.例如:415-555-4242 i ...
- 第七周&实验报告五
实验四 类的继承 •实验目的 •理解抽象类与接口的使用: •了解包的作用,掌握包的设计方法. •实验要求 •掌握使用抽象类的方法. •掌握使用系统接口的技术和创建自定义接口的方法. •了解 Java ...
- 20165337第七周实验报告《Java面向对象程序设计》
实验报告封面 实验内容及步骤 实验一.实现百分制成绩转成"优.良.中.及格.不及格"五级制成绩的功能 代码 public class MyUtil{ public static S ...
- 2019JAVA第七次实验报告
Java实验报告 班级 计科二班 学号 20188442 姓名 吴怡君 完成时间 2019.10.25 评分等级 实验任务详情: 完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)1 ...
- Python第七章(北理国家精品课 嵩天等)
7.1文件的使用 1.1文本类型 文本文件:由单一特定编码组成的文件,如.txt 二进制文件:如.png,.avi 1.2文件的打开和关闭 打开-操作-关闭 <变量名> = open(&l ...
- 流畅的python第七章函数装饰器和闭包学习记录
本章讨论的话题 python如何计算装饰器句法 python如何判断变量是不是局部的(通过函数内部是否给变量赋值过来判断是否是局部变量) 闭包存在的原因和工作原理(闭包是一种函数,它会保留定义函数时存 ...
- python第七章:常用模块--小白博客
yagmail模块 python标准库中发送电子邮件的模块比较复杂,因此,有许多开原的库提供了更加易用的接口来发送电子邮件,其中yagmail是一个使用比较广泛的开原项目,yagmail底层依然使用了 ...
- 第j九周学习总结暨第七周实验报告
完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)10个窗口同时开始卖票: (3)卖票过程延时1秒钟: (4)不能出现一票多卖或卖出负数号票的情况. 一:实验代码 package d ...
- 第九周总结&第七次实验报告
实验7 实验任务详情: 完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)10个窗口同时开始卖票: (3)卖票过程延时1秒钟: (4)不能出现一票多卖或卖出负数号票的情况. 实验过程 ...
随机推荐
- zabbix(历史数据保留时长和趋势存储时间的区别)
zabbix(历史数据保留时长和趋势存储时间的区别)? zabbix(历史数据保留时长和趋势存储时间分别影响着哪里)? 001.影响grafana 数据展示的是历史数据还是趋势数据? 等把<历史 ...
- spring boot读取本地文件
File file = ResourceUtils.getFile("classpath:face/1112.txt"); InputStream inputStream = ne ...
- jq-Grid 能折叠的表格
有一个需求是需要用jq-Grid展示一个可以折叠的表格,并且要求在页面初始化的时候就将表格折叠起来,我看了一下文档可以给列表增加 toolbar: [true, "top"],ca ...
- Dashboard是什么意思 Dashboard怎么用?
Dashboard是什么意思?Dashboard怎么用?可能很多Mac用户朋友都不知道,Dashboard是苹果OS X操作系统的一大特色.是随苹果公司 Mac OS X 10.4 Tiger 操作系 ...
- Automatic Workload Repository (AWR)自动工作负载存储库
自动工作负载存储库 (AWR)是历史性能数据的存储库,其中包括系统.会话.单个 SQL 语句.段和服务的累积统计信息. AWR 统计数据是性能调优的基础.通过自动收集用于问题检测和调整的数据库统计信息 ...
- Python 的入门学习之 Day4~6 ——from”夜曲编程“
Day 4 time: 2021.8.1. 打卡第四天.今天起得很早(7点多一些),很棒,而梳头发更快些就更好了.我也算渐渐养成了晨间学习的习惯吧,一起床就心心念念着Python课程,这让我感觉到了生 ...
- 第11章 配置ASP.NET Core应用程序(ASP.NET Core in Action, 2nd Edition)
本章包括 从多个配置提供程序加载设置 安全存储敏感设置 使用强类型设置对象 在不同的宿主环境中使用不同的设置 在本书的第1部分中,您学习了ASP.NET Core应用程序启动和运行的基础知识,以及如何 ...
- PLC入门笔记4
逻辑指令及其应用 基本逻辑指令 续电器 PLC 公式 扩展逻辑指令 1.置位和复位线圈 置位ON/复位OFF (SET/RST) 不推荐置位复位线圈 可以用更好的方式去表达.. 2.能流取反开关 取 ...
- RocketMQ4.x本地源码部署教程
安装前提条件(推荐) 64bit OS, Linux/Unix/Mac (Windows不兼容)64bit JDK 1.8+; 快速开始 http://rocketmq.apache.org/docs ...
- mysql_记录操作
在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括 使用INSERT实现数据的插入 UPDATE实现数据的更新 使用DELETE实现数据的删除 使用SELECT查询数据以及 ...