題目
1、概述:
完成學生,組長,教師的設計與實現。
2、具體實現內容:
學生:
姓名, 年齡, 學號
吃飯, 睡覺, 學習
組長:
姓名, 年齡, 學號, 職務
吃飯, 睡覺, 學習, 管理
教師:
姓名, 年齡, 職務
吃飯, 睡覺, 教學, 管理
根據以上需求,需要考慮如何設計繼承關系,是否會用到多繼承等。
3、主函數:測試
學生小明:實現吃飯、睡覺、學習。
班級學習小組長,王組長:實現吃飯、睡覺、學習、管理班級學習。
教師王老師:實現吃飯、睡覺、上課教學、管理班級學習。
代碼
# author:dq
# project:PythonProject
# date:2021年11月04日
# function:班級管理相關類的實現# Person類:姓名, 年齡, 吃飯, 睡覺
class Person():def __init__(self, name, age):self.name = nameself.age = agedef eat(self):print(self.name + '在吃飯!')def sleep(self):print(self.name + '在睡覺 !')# Student類: 姓名, 年齡, 學號 吃飯, 睡覺, 學習
class Student(Person):__slots__ = ('name', 'age', 'number')def __init__(self, name, age, number):super(Student, self).__init__(name, age)self.number = numberdef learn(self):print(self.name + '在學習!')# GroupLeader類:姓名, 年齡, 學號, 職務 吃飯, 睡覺, 學習, 管理
class GroupLeader(Student):def __init__(self, name, age, number, post):super(GroupLeader, self).__init__(name, age, number)self.post = postdef govern(self):print(self.name + '管理班級學習!')# 姓名, 年齡, 職務 吃飯, 睡覺, 教學, 管理
class Teacher(Person):def __init__(self, name, age, post):super(Teacher, self).__init__(name, age)self.post = postdef govern(self):print(self.name + '管理班級學習!')def teach(self):print(self.name + '上課教學')# Main:測試類# 學生小明:實現吃飯、睡覺、學習。# 班級學習小組長,王組長:實現吃飯、睡覺、學習、管理班級學習。# 教師王老師:實現吃飯、睡覺、上課教學、管理班級學習。
def main():student = Student('小明', 20, '19380120114')student.eat()student.sleep()student.learn()groupLeader = GroupLeader('王組長', 21, '19380120110', '班級學習小組長')groupLeader.eat()groupLeader.sleep()groupLeader.learn()groupLeader.govern()teacher = Teacher('王老師', 35, '教師')teacher.eat()teacher.sleep()teacher.teach()teacher.govern()main()