老师的职责是教学,学生的职责是学习,而研究生的兼具有老师和学生的职责,既要学习又要帮助老师管理、教育学生,请编写一个程序,实现以下功能需求: 1)设计一个老师类Teacher,描述老师的信息(姓名、年龄)和职责(教学)。 2)设计一个学生类Student,描述学生的信息(姓名、学号)和职责(学习)。 3)设计一个研究生类Graduate,描述研究生的信息(姓名、年龄、学号)和职责(教学,学习)。
时间: 2024-03-17 09:46:32 浏览: 73
编写程序,设计一个学生类Student和它的子类Undergraduate
5星 · 资源好评率100%
好的,以下是实现以上功能需求的Python代码:
```
class Teacher:
def __init__(self, name, age):
self.name = name
self.age = age
self.duty = 'teaching'
class Student:
def __init__(self, name, student_id):
self.name = name
self.student_id = student_id
self.duty = 'studying'
class Graduate(Teacher, Student):
def __init__(self, name, age, student_id):
Teacher.__init__(self, name, age)
Student.__init__(self, name, student_id)
self.duty = 'teaching and studying'
```
这里使用了Python的多重继承来实现研究生类同时继承自老师类和学生类。在研究生类的构造函数中,我们调用了父类的构造函数来初始化姓名、年龄和学号等信息,并将职责设置为“教学和学习”。可以按照以下方式使用这些类:
```
teacher = Teacher('Tom', 35)
student = Student('John', '20210001')
graduate = Graduate('Mary', 25, '20210002')
print(teacher.name, teacher.age, teacher.duty)
print(student.name, student.student_id, student.duty)
print(graduate.name, graduate.age, graduate.student_id, graduate.duty)
```
输出结果如下:
```
Tom 35 teaching
John 20210001 studying
Mary 25 20210002 teaching and studying
```
阅读全文