美文网首页
2018-09-07 day15 第三周周末作业

2018-09-07 day15 第三周周末作业

作者: xaidc | 来源:发表于2018-09-10 13:47 被阅读0次

    1.定义一个学生类。有属性:姓名、年龄、成绩(语文,数学,英语)[每课成绩的类型为整数]
    方法: a. 获取学生的姓名:getname() b. 获取学生的年龄:getage() c. 返回3门科目中最高的分数。get_course()

    class Student:
        def __init__(self,name,age,*score):
            self.name = name
            self.age = age
            self.score = score
    
        def get_name(self):
            return self.name
    
        def get_age(self):
            return self.age
        def get_course(self,*score):
            list1 = list(self.score)
            x = max(list1)
            return x
    stu1 = Student('小明',18,78,89,78)
    print(stu1.get_name())
    print(stu1.get_age())
    print(stu1.get_course())
    输出结果:
    小明
    18
    89
    

    2.建立一个汽车类Auto,包括轮胎个数,汽车颜色,车身重量,速度等成员变量,并通过不同的构造方法创建实例。
    至少要求 汽车能够加速 减速 停车。
    再定义一个小汽车类CarAuto 继承Auto 并添加空调、CD等成员变量 覆盖加速 减速的方法

    class Auto:
        def __init__(self, tyre_num,color,weight,speed):
            self.tyre_num =tyre_num
            self.color = color
            self.weight = weight
            self.speed = speed
        def speed_up(self,accelerated_speed):
            self.speed += accelerated_speed
            print('正在加速')
            return '加速度为%d'%accelerated_speed
        @classmethod
        def speed_down(cls):
            return '正在减速'
    
        @staticmethod
        def park():
            return '已停车'
    class CarAuto(Auto):
        def __init__(self,tyre_num,color,weight,speed):
            super().__init__(tyre_num,color,weight,speed)
            self.air_conditioner =  '格力'
            self.cd = 'cd12'
    
    
    
    A1 = Auto(4,'黑色','2000kg',56)
    print(A1.speed_up(5))
    print(A1.speed_down())
    print(A1.park())
    print('===================')
    C1 = CarAuto(4,'baise','1000kg',78)
    print(C1.air_conditioner)
    print(C1.cd)
    print(C1.speed_up(6))
    print(C1.speed_down())
    输出结果:
    正在加速
    加速度为5
    正在减速
    已停车
    ===================
    格力
    cd12
    正在加速
    加速度为6
    正在减速
    

    3.创建一个名为User 的类,其中包含属性firstname 和lastname ,
    还有用户简介通常会存储的其他几个属性。在类User 中定义一个名 为describeuser() 的方法,
    它打印用户信息摘要;再定义一个名为greetuser() 的方法,它向用户发出个性化的问候
    管理员是一种特殊的用户。
    编写一个名为Admin 的类,让它继承User类。添加一个名为privileges 的属性
    ,用于存储一个由字符串(如"can add post"、"can delete post"、"can ban user"等)组成的列表。
    编写一个名为show_privileges()的方法,它显示管理员的权限。创建一个Admin 实例,并调用这个方法。

    class User:
        def __init__(self,first_name,last_name,age,sex = '男'):
            self.first_name= first_name
            self.last_name = last_name
            self.age = age
            self.sex = sex
        def describeuser(self):
            return '姓氏:%s,名:%s,年龄:%d,性别:%s'%(self.first_name,self.last_name,self.age,self.sex)
        def greetuser(self):
            return '%s%s,你好,祝你天天开心'%(self.first_name,self.last_name)
    class Admin(User):
        def __init__(self,first_name,last_name,age):
            super().__init__(first_name,last_name,age)
            self.privileges = ["can add post","can delete post","can ban user"]
        def show_privileges(self):
            return '%s'%self.privileges
    
    u1 = User('江','秀成',21)
    print(u1.describeuser())
    print(u1.greetuser())
    
    A1 = Admin('江','秀成',21)
    print(A1.show_privileges())
    输出结果:
    姓氏:江,名:秀成,年龄:21,性别:男
    江秀成,你好,祝你天天开心
    ['can add post', 'can delete post', 'can ban user']
    

    3.创建一个Person类,添加一个类字段用来统计Perosn类的对象的个数

    class Person:
        number = 0
        def __init__(self,num):
            self.num = num
            Person.number += 1
        @classmethod
        def numbers(cls):
            return cls.number
    
    p1 = Person(2)
    P2 = Person(1)
    P3 = Person(2)
    print('对象个数是%d个'%Person.numbers())
    输出结果:
    对象个数是3个
    

    5.写一个类,其功能是:1.解析指定的歌词文件的内容
    2.按时间显示歌词 提示:歌词文件的内容一般是按下面的格式进行存储的。
    歌词前面对应的是时间,在对应的时间点可以显示对应的歌词

    [00:00.20]蓝莲花
    [00:00.80]没有什么能够阻挡
    [00:06.53]你对自由地向往
    [00:11.59]天马行空的生涯
    [00:16.53]你的心了无牵挂
    [02:11.27][01:50.22][00:21.95]穿过幽暗地岁月
    [02:16.51][01:55.46][00:26.83]也曾感到彷徨
    [02:21.81][02:00.60][00:32.30]当你低头地瞬间
    [02:26.79][02:05.72][00:37.16]才发觉脚下的路
    [02:32.17][00:42.69]心中那自由地世界
    [02:37.20][00:47.58]如此的清澈高远
    [02:42.32][00:52.72]盛开着永不凋零
    [02:47.83][00:57.47]蓝莲花

    str = """
    [00:00.20]蓝莲花
    [00:00.80]没有什么能够阻挡
    [00:06.53]你对自由地向往
    [00:11.59]天马行空的生涯
    [00:16.53]你的心了无牵挂
    [02:11.27][01:50.22][00:21.95]穿过幽暗地岁月
    [02:16.51][01:55.46][00:26.83]也曾感到彷徨
    [02:21.81][02:00.60][00:32.30]当你低头地瞬间
    [02:26.79][02:05.72][00:37.16]才发觉脚下的路
    [02:32.17][00:42.69]心中那自由地世界
    [02:37.20][00:47.58]如此的清澈高远
    [02:42.32][00:52.72]盛开着永不凋零
    [02:47.83][00:57.47]蓝莲花
    """
    
    
    class Music:
        dict = {}
        def __init__(self,lyric):
            self.lyric = lyric
        def scarlet(self):
            for i in self.lyric.splitlines():
                a = i.replace("[","]").split("]")
                for j in range(len(a) - 1):
                    Music.dict[a[j]] = a[-1]
            for key in sorted(set(Music.dict.keys())):
                print(key,Music.dict[key])
            return '解析完毕'
    p1 = Music(str)
    x = p1.scarlet()
    print(x)
    输出结果:
     蓝莲花
    00:00.20 蓝莲花
    00:00.80 没有什么能够阻挡
    00:06.53 你对自由地向往
    00:11.59 天马行空的生涯
    00:16.53 你的心了无牵挂
    00:21.95 穿过幽暗地岁月
    00:26.83 也曾感到彷徨
    00:32.30 当你低头地瞬间
    00:37.16 才发觉脚下的路
    00:42.69 心中那自由地世界
    00:47.58 如此的清澈高远
    00:52.72 盛开着永不凋零
    00:57.47 蓝莲花
    01:50.22 穿过幽暗地岁月
    01:55.46 也曾感到彷徨
    02:00.60 当你低头地瞬间
    02:05.72 才发觉脚下的路
    02:11.27 穿过幽暗地岁月
    02:16.51 也曾感到彷徨
    02:21.81 当你低头地瞬间
    02:26.79 才发觉脚下的路
    02:32.17 心中那自由地世界
    02:37.20 如此的清澈高远
    02:42.32 盛开着永不凋零
    02:47.83 蓝莲花
    解析完毕
    

    相关文章

      网友评论

          本文标题:2018-09-07 day15 第三周周末作业

          本文链接:https://www.haomeiwen.com/subject/siwcgftx.html