结合点语法等
''' 1.编写class类,拥有name,teacher,course三个属性,自定义打印格式输出,对象的全部属性 ''' ''' 2.编写student类,存储用户信息, 要求改类对象可以使用点语法来操作属性,也可以通过中括号的方式操作属性 要求通过班级可以获取到班级下的所有学员 ,思考关联关系,应该如何表示 ''' ''' 3.创建一系列student对象存储到列表中, 然后编写排序算法,将对象按照年龄排序,排序算法不限 ''' class Class: def __init__(self,name,teacher,course): self.name = name self.teacher = teacher self.course = course def __str__(self): return "[name: %s teacher: %s course: %s]"% (self.name,self.teacher,self.course) c1 = Class("天才小组","天才老师","天才课程") print(c1) class Student(dict): def __init__(self,name,age,gender,team_name): super().__init__() self.name = name self.age = age self.gender = gender self.team_name = team_name def __getattr__(self, item): return self[item] def __setattr__(self, key, value): self[key] = value def __delattr__(self, item): del self[item] def __gt__(self, other): return self.age > other.age stu1 = Student("小明",12,"man",c1.name) stu2 = Student("小李",10,"woman",c1.name) stu3 = Student("小天",14,"man",c1.name) stu4 = Student("小慧",9,"woman","没班级") stu = [stu1,stu2,stu3,stu4] # 按照年龄从小到大 ———————————————————————————————————— for i in range(len(stu)): for j in range(i,len(stu)-1): s1 = stu[j] s2 = stu[j+1] if s1 > s2: stu[j] = s2 stu[j+1] = s1 print("交换位置了") print(stu) ———————————————————————————————————— # 下面的只是把同一组的放到一起 res = [] for stu in stus: if stu.team_name == c1.name: res.append(stu) print(c1.name,"共有:",res)转载于:https://www.cnblogs.com/PowerTips/p/11272570.html
相关资源:JAVA上百实例源码以及开源项目