Python第7章 实例 实战
一、实验目的和要求
理解面向对象
二、实验过程
通过pycharm进行代码编辑
三、实验过程
敲代码
四、代码及其结果




实例1
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("我飞行的时候,一会儿排成个人字,一会排成个一字")
实例2
class Geese:
'''雁类'''
neck="脖子过长"
wing="振翅频率高"
leg="腿位于身体的中心支点,行走自如"
def __init__(self):
print("我属于雁类!我有以下特征:")
print(Geese.neck)
print(Geese.wing)
print(Geese.leg)
geese=Geese()
实例3
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)
实例4
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我是橘子")
# 重写harvest()方法的代码
def harvest(self,color):
print("橘子是:"+color+"的!")
print("橘子已经收获……")
print("橘子原来是:"+Fruit.color+"的!");
apple = Apple()
apple.harvest(apple.color)
orange = Orange()
orange.harvest(orange.color)
实例5
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 Aapodilla(Fruit):
def __init__(self,color):
print("\n我是人参果")
super().__init__(color)
# 重写harvest()方法的代码
def harvest(self,color):
print("人参果是:"+color+"的!")
print("人参果已经收获……")
print("人参果原来是:"+Fruit.color+"的!");
apple = Apple()
apple.harvest(apple.color)
sapodilla = Aapodilla("白色")
sapodilla.harvest("金黄色带紫色条纹")
实战1
class Phone:
def __init__(self,language = '英文'): #构造方法
if language == '英文':
print("智能手机的默认语言为" + language)
else:
print("将智能手机的默认语言设置为" + language)
Phone() #无参数
Phone('中文') #有参数
实战2
class Card:
def __init__(self,number,code = "123456"):
if code == "123456":
print("信用卡" + str(number) + "的默认密码为"+ str(code))
else:
print("重置信用卡" + str(number) + "的密码为" + str(code))
Card("4013735633800642")
Card("4013735633800642","168779")
实战3
# 月销量类
class Monthly_sales:
# 销售明细 列表
commodity = (('T0001', '笔记本电脑'), ('T0002', '华为荣耀6X'), ('T0003', 'iPad'), ('T0004', '华为荣耀V9'), ('T0005', 'MacBock'))
# 初始化方法 传递月份 参数判断销售数据
def __init__(self, monthly):
# 判断该月份销售情况
if monthly=='2':
print('2月份的商品销售明细如下:')
for i in range(len(Monthly_sales.commodity)):
print('{}{} {}{}'.format('商品编号:',Monthly_sales.commodity[i][0],'商品名称:',Monthly_sales.commodity[i][1]))
mothlys = input('\n请输入要查询的月份(比如1、2、3等):')
mothly_sales = Monthly_sales(mothlys)
else:
# 其它月份销售情况
print('\n该月份没有销售数据或者输入月份有误!\n')
mothlys = input('请输入要查询的月份(比如1、2、3等):')
mothly_sales = Monthly_sales(mothlys)
print('销售明细')
mothlys =input('请输入要查询的月份(比如1、2、3等):')
mothly_sales=Monthly_sales(mothlys)
实战4
# 封装售票机对象
class Ticketing_machine:
Films_name=''
seat=''
Movie_field=''
# 初始化方法
def __init__(self):
print('\n欢迎使用自动售票机~~')
pass
# 选择电影
def Films(self,Films_name):
Ticketing_machine.Films_name = Films_name
print('已选电影:'+Films_name)
pass
# 选择电影场次
def Movie_fields(self,Movie_field):
Ticketing_machine.Movie_field="2018.4.12 "+Movie_field
print('电影场次:' + Movie_field)
# 选择座位
def seats(self,seat):
Ticketing_machine.seat = seat
print('选择座位:' + seat)
pass
# 打印电影票
def Cinema_ticket(self):
print("电影:"+Ticketing_machine.Films_name)
print("播出时间:" + Ticketing_machine.Movie_field)
print("座位:" + Ticketing_machine.seat)
pass
# 初始化售票机对象
ticketing = Ticketing_machine()
# 提示正在上映电影
print('\n请选择正在上映的电影:1、《环太平洋:雷霆再起》 2、《头号玩家》 3、《红海行动》')
# 选择的电影
ticketing.Films('《头号玩家》')
# 提示选择场次
print('\n请选择电影播放场次:1、9:30 2、10:40 3、12:00')
# 选择的场次
ticketing.Movie_fields('10:40')
# 提示选择座位
print('\n请选择座位剩余座位:10-01,10-02,10-03,10-04')
# 选择的座位
ticketing.seats('10-3')
print('\n正在出票。。。\n')
# 电影票信息
ticketing.Cinema_ticket()
print('\n出票完成,请别忘记取票')

浙公网安备 33010602011771号