2018-09-08|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()

【2018-09-08|2018-09-08 day15-作业】创建一个Person类,
添加一个类字段用来统计Perosn类的对象的个数
class Person: count = 0 def __init__(self): Person.count+=1 p1= Person() p2 =Person()if __name__ == '__main__': print(Person.count)

    推荐阅读