定义一个学生类。有属性:姓名、年龄、成绩(语文,数学,英语,每科成绩的类型为整型)
方法:a.获取学生的姓名:getname(),b.获取学生的年龄:getage(),c.返回3门科目中最高的分数。get_course()
class Student:
def __init__(self, name, age, *score:int):
self.name = name
self.age = age
self._score = score
# 获取学生姓名
def getname(self):
return self.name
# 获取学生的年龄
def getage(self):
return self.age
# 返回3门科目中最高的分数
@property
def score(self):
return max(self._score)
1.建立一个汽车类Auto,包括轮胎个数,汽车颜色,车身重量,速度等成员变量,并通过不同的构造方法创建实例。
至少要求汽车能够加速、减速、停车。再定义一个小汽车类CarAuto继承Auto并添加空调、CD等成员变量,覆盖加速减速的方法。
class Auto:
def __init__(self, tyre, color, weight, speed):
self.tyre = tyre
self.color = color
self.weight = weight
self.speed = speed
self.called = '汽车'
def speed_up(self):
return '%s加速' % self.called
def speed_cut(self):
return '%s减速' % self.called
def park(self):
return '%s停车' % self.called
class CarAuto(Auto):
def __init__(self, tyre, color, weight, speed, cd, air):
super().__init__(tyre, color, weight, speed)
self.cd = cd
self.air = air
self.called = '小汽车'
def speed_up(self):
return '%s加速' % self.called
def speed_cut(self):
return '%s减速' % self.called
def park(self):
return '%s停车' % self.called
2.创建一个名为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, tel, site):
self.first_name = first_name
self.last_name = last_name
self.tel = tel
self.site = site
def describe_user(self):
return '<' + str(self.__dict__)[1:-1] + '>'
def greet_user(self):
return 'Hello, %s%s!' % (self.last_name, self.first_name)
class Admin(User):
def __init__(self, first_name, last_name, tel, site, *privileges):
super().__init__(first_name, last_name, tel, site)
self.privileges = list(privileges)
def show_privileges(self):
return self.privileges
3.创建一个Person类,添加一个类字段用来统计Person类的对象的个数。
class Person:
count = 0
def __init__(self, name, age, sex):
Person.count += 1
self.name = name
self.age = age
self.sex = sex
@classmethod
def person_count(cls):
return cls.count
4.
with open('files/' + 'song.txt','r', encoding='utf-8') as f:
songs = f.read()
# print(songs)
list1 = songs.split('\n')
print(list1)
for song in list1:
strs = []
for one_str in song:
if 0x4e00< ord(one_str) < 0x9fa5:
# print(one_str)
strs.append(one_str)
print(strs)
def main():
p1 = Person('张三', 18, '男')
p2 = Person('李四', 20, '男')
p3 = Person('王五', 22, '男')
print('个数:',Person.person_count())
admin1 = Admin('书语', '张', 1388888, '成都', 'can add post', 'can delete post', 'can ban user')
print(admin1.__dict__)
print(admin1.show_privileges())
u1 = User('书语', '张', 138888, '成都')
print(u1.__dict__)
print(u1.describe_user())
print(u1.greet_user())
stu1 = Student('张三', 18, 93, 98, 75) # 在这,93,98,75不能写成元组形式
print(stu1.getname())
print(stu1.getage())
print(stu1.score)
a1 = Auto(4, '黄色', 2, 200)
print(a1.speed_up())
print(a1.speed_cut())
print(a1.park())
c1 = CarAuto(4, '红色', 1, 180, '因为爱情', '空调')
print(c1.__dict__)
print(c1.speed_up())
print(c1.speed_cut())
print(c1.park())
if __name__ == '__main__':
main()