2018-08-02day-14作业

1.定义一个学生类,有属性:姓名,年龄,成绩(语数外)(成绩为整数)。方法:a.获取学生的姓名:getname()b.获取学生的年龄getage c.获取最高成绩

class Student:
    def __init__(self,name,age,score=[]):
        self.name=name
        self.age=age
        self.score=score
    def get_name(self):
        print(self.name)
    def get_age(self):
        print(self.age)
    def get_highest_score(self):
        for score in self.score:
            max_score=self.score[0]
            if score > max_score:
                max_score=score
                print('最高成绩为%s'%max_score)


s1=Student('大黄',10,[80,90,99])
s1.get_age()
s1.get_name()
print(s1.score)
s1.get_highest_score()

2.建立一个汽车类Auto,拥有属性 轮胎个数,颜色,重量,速度等,拥有方法为加速,减速和停车。建一个小汽车类CarAuto,继承Auto的属性和方法,并添加cd,和空调等属性,并且重新定义加速和减速的方法

class Auto:
    def __init__(self,number=4,color='',weight=1,speed=100):
        self.number=number
        self.color=color
        self.weight=weight
        self.speed=speed
    def acceleration(self):
        print('%s正在加速'%self.name)
    def decleration(self):
        print('%正在减速'%self.name)
    def park(self):
        print('%正在停车'%self.name)

class CarAuto(Auto):
    def __init__(self):
        self.cd='有播放CD功能'
        self.air_condition='有空调系统'
    def acceleration(self):
        print('疯狂加速')
    def decleration(self):
        print('灵活减速')
c1=CarAuto()
print(c1.cd,c1.air_condition)
c1.acceleration()
c1.decleration()

3.创建一个User的类,其中包含属性firstname和lastname,还有用户简介通常会存储的几个属性,在User类中定义一个describe user的方法来描述用户的信息,定义一个greetuser的方法,来向用户问好。
编写一个Admin的类,来继承User的类。添加一个名为privileges的属性,用于存储一个由字符串(‘can add post’,‘can delete post ’,‘can ban user’等)组成的列表。编写一个名为show_privileges()的方法,它显示管理员的权限。创建一个Admin的实例,并调用这个方法。

class User:
    def __init__(self,firstname,lastname,age=20,sex='男'):
        self.firstname=firstname
        self.lastname=lastname
        self.age=age
        self.sex=sex
    def describe_user(self):
        print('用户信息为  姓:%s 名:%s 性别:%s 年龄:%d'%(self.firstname,self.lastname,self.sex,self.age))
    def greet_user(self):
        print('早上好%s%s '%(self.firstname,self.lastname))
u1=User('张','伟')
u1.describe_user()
u1.greet_user()
class Admin(User):
    #定义类字段来表示管理员的权限
    a=['1.can add post','2.can delete post','3.can ban user']
    def __init__(self,privileges=a):
        self.privileges=privileges
    @classmethod
    def show_privileges(cls):
        print('管理员的权限为')
        print(cls.a)
Admin.show_privileges()

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

class Person:
    #用number来统计创建对象的个数,初始为0
    number=0
    def __init__(self):
        #每使用一个对象属性时,创建对象个数加1
        Person.number+=1

    def __del__(self):
        #每删除一个对象时,总创建对象个数减1
        Person.number -= 1
u1=Person()
u2=Person()
u3=Person()
print(Person.number)
del u1
print(Person.number)

你可能感兴趣的:(2018-08-02day-14作业)