2018-09-08 day15-作业

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

class Student:
    """学生类"""
    def __init__(self,name,age):
        self.name = name
        self.age = age
        self.scores = {}

    def highest_scores(self):
        for _ in self.scores:
            if not self.scores:
                return 0
            return max(self.scores.values())

if __name__ == '__main__':
    s1 = Student('博丽灵梦',18)
    s1.scores = {'语文':89, '数学':93, '英语':77}
    print(s1.name,s1.age)
    print(s1.highest_scores())
# 输出结果
博丽灵梦 18
93

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

class Auto:
    """汽车类"""
    def __init__(self,tire=0,color='白色',kg=0,speed=0):
        self.tire = tire
        self.color = color
        self.kg = kg
        self.speed = speed
    # 对象方法
    def accelerate(self):
        print('汽车能够加速')
    # 类方法
    @classmethod
    def decelerate(cls):
        print('汽车能够减速')
    # 静态方法
    @staticmethod
    def park():
        print('停车')

class Car(Auto):
    def __init__(self):
        super().__init__()
        self.conditioner = '空调'
        self.CD = 'CD'

    def accelerate(self):
        print('空调')
    def decelerate(cls):
        print('CD')




if __name__ == '__main__':
    a1 = Auto(3, '白色', 78, 100)
    a1.accelerate()
    a1.decelerate()
    a1.park()
    a2 = Car()
    # print(a2.CD)
    # print(a2.conditioner)
    a2.decelerate()
    a2.accelerate()
#输出结果
汽车能够加速
汽车能够减速
停车
CD
空调
CD
空调

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,firstname='',lastname='',age=0,sex=''):
        self.firstname = firstname
        self.lastname = lastname
        self.age = age
        self.sex = sex
    def describeuser(self):
        print(self.__dict__)
    @staticmethod
    def greetuser():
        print('你好,欢迎回来!')

class Admin(User):
    def __init__(self,privileges=[]):
        super().__init__()
        self.privileges = privileges
    def show_privileges(self):
        b=''
        for a in privileges[0:-1]:
            b+='%s,'%a
        print('管理权限是%s'%b+privileges[-1]+'.')
privileges = ["can add post","can delete post","can ban user"]

if __name__ == '__main__':
    u1 = User('爱丽丝','威震天',18,'女')
    u1.describeuser()
    u1.greetuser()
    a1 = Admin(privileges)
    print(a1.privileges)
    a1.show_privileges()

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

class Person:
    count = 0
    def __init__(self):
        Person.count+=1
p1= Person()
p2 =Person()

if __name__ == '__main__':
    print(Person.count)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 0.定义一个学生类。有属性:姓名、年龄、成绩(语文,数学,英语)【每科成绩的类型为是整数】方法:A.获取学生的姓名...
    不忘初心_c590阅读 1,643评论 0 0
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,092评论 19 139
  • 结构型设计模式 简要定义 以共享的方式高效的支持大量的细粒度对象,通过复用内存中存在的对象, 降低系统创建对象实例...
    资深智障阅读 1,684评论 0 0
  • 彼岸花收起骄昂姿态 将希望重新在泥土里潜伏 然后在某一个普通的日子的某一瞬 我得到了惊喜的嗅觉安抚 呼吸有了馥郁的...
    喜乐心记阅读 1,864评论 1 2
  • 导读:顾客听了我们的产品介绍后,表现出了一点兴趣,销售员也非常热情的邀请顾客体验产品,可是,顾客要么拒绝体验,要么...
    夜猫小静阅读 4,369评论 0 0

友情链接更多精彩内容