xiaomianlang

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

一.实验名称:《零基础学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出票完成,请别忘记取票')


运行结果:

posted on 2022-10-22 20:03  冷狼  阅读(312)  评论(0)    收藏  举报