day015 作业 08-02

2018-08-02  本文已影响0人  Yehao_

1.定义一个学生类。
有属性:姓名、年龄、成绩(语文,数学,英语)[每科成绩的类型为整型]
有方法:

class Student:

    def __init__(self, name, age, chinese, math, english):
        self.name = name
        self.age = age
        self.score = {'Chinese': chinese,
                      'Math': math,
                      'English': english,
                      }

    def get_name(self):
        return self.name

    def get_age(self):
        return self.age

    def get_course(self):
        return max(self.score['Chinese'], self.score['Math'], self.score['English'])

if __name__ == '__main__':
    s1 = Student('A', 12, 55, 66, 77)
    max_score = s1.get_course()
    print(max_score)
  1. 建立一个汽车类Auto,包括轮胎个数,汽车颜色,车身重量,速度等成员变量,并通过不同的构造方法创建实例。至少要求汽车能顾加速、减速、停车。再定义一个小汽车类CarAuto继承Auto并添加空调、CD等成员变量,覆盖加速、减速方法。
class Auto:
    def __init__(self, wheel_num, color, weight, speed):
        self.wheel_num = wheel_num
        self.color = color
        self.weight = weight
        self.speed = speed

    def speed_up(self):
        self.speed += 1

    def speed_down(self):
        self.speed -= 1

    def stop(self):
        self.speed = 0

class CarAuto(Auto):
    def __init__(self, color, weight, speed):
        super().__init__(wheel_num=4, color=color, weight=weight, speed=speed)
        self.air_condition = ''
        self.CD = ''

    def speed_up(self):
        self.speed += 5

    def speed_down(self):
        self.speed -= 5

3.创建一个User类,包含first_name、last_name和用户简介。在类User中定义一个名为describe_user()的方法,它打印用户信息摘要;再定义一个名为greet_user()的方法,它向用户发出个性化的问候。
编写一个Admin类,继承User类。添加一个privileges的属性,用于存储一个由字符串(如"can add post", "can delete post", "can ban user")等组成的列表。编写一个名为show_privileges()的方法,它显示管理员的权限。创建一个Admin并调用这个方法。

class User:
    def __init__(self, first_name, last_name, abstract=''):
        self.first_name = first_name
        self.last_name = last_name
        self.abstract = abstract

    def describe_user(self):
        print(self.abstract)

    def greet_user(self):
        print('%s %s,你好' % (self.first_name, self.last_name))

class Admin(User):
    privileges = ['can add post', 'can delete post', 'can ban user']

    @classmethod
    def show_privileges(cls):
        print(*cls.privileges)
if __name__ == '__main__':
    admin = Admin('Kobe', 'Bryant', 'A basketball player.')
    admin.show_privileges()

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

class Person:
    numbers = 0

    def __init__(self, name, age, sex):
        Person.numbers += 1
        self.name = name
        self.age = age
        self.sex = sex

    @classmethod
    def number(cls):
        return cls.numbers

if __name__ == '__main__':
    p1 = Person('a', 12, 'Male')
    p2 = Person('b', 13, 'Female')
    print(Person.number())
上一篇 下一篇

猜你喜欢

热点阅读