School(object): __init__(self,name,addr): self.name=name self.addr=addr self.students=[] self.staffs=[] enroll(self,stu_obj): self.students.append(stu_obj) print(%stu_obj.name) hire(self,staff_obj): self.staffs.append(staff_obj) print(%staff_obj.name) SchoolMember(object): __init__(self,name,age,sex,hourse_name,hourse_id): self.name=name self.age=age self.sex=sex self.hourse_name=hourse_name self.hourse_id=hourse_id tell(self): Teacher(SchoolMember): __init__(self,name,age,sex,salary,course,hourse_name,hourse_id): super(Teacher,self).__init__(name,age,sex,hourse_name,hourse_id) self.salary=salary self.course=course tell(self): print(%(self.name,self.name,self.age,self.sex,self.salary,self.course,self.hourse_name,self.hourse_id)) teach(self): print(%(self.name,self.course)) Student(SchoolMember): __init__(self,name,age,sex,stu_id,grade,hourse_name,hourse_id): super(Student,self).__init__(name,age,sex,hourse_name,hourse_id) self.stu_id=stu_id self.grade=grade tell(self): print(%(self.name, self.name, self.age, self.sex, self.stu_id, self.grade,self.hourse_name,self.hourse_id)) pay_tuition(self,amount): print(%(self.name,amount)) school=School(,) t1=Teacher(,66,,7000,,,) t2=Teacher(,26,,6000,,,) s1=Student(,18,,,,,) s2=Student(,17,,,,,) t1.tell() t2.tell() s1.tell() s2.tell() school.hire(t1) school.hire(t2) school.enroll(s1) school.enroll(s2) t1.teach() t2.teach() print(school.students,school.staffs) stu school.students: stu.pay_tuition(5000)
上一篇:面向对象-多态的实现
下一篇:Python编程快速上手实例分析