用python实现编写一个学生和教师数据输入和输出的程序。学生数据包括编号、姓名、班号、和成 绩;教师的数据含有编号、姓名、职称和部门。要求设计一个 person 类,作为学生数据 操作类 student 和教师数据操作类 teacher 的基类
时间: 2024-06-09 14:12:14 浏览: 151
好的,我可以帮您解决这个问题。以下是一个示例程序,用Python实现学生和教师数据的输入和输出:
```python
class Person:
def __init__(self, id, name):
self.id = id
self.name = name
class Student(Person):
def __init__(self, id, name, cls, score):
super().__init__(id, name)
self.cls = cls
self.score = score
def display(self):
print(f"学生编号:{self.id},姓名:{self.name},班级:{self.cls},成绩:{self.score}")
class Teacher(Person):
def __init__(self, id, name, title, department):
super().__init__(id, name)
self.title = title
self.department = department
def display(self):
print(f"教师编号:{self.id},姓名:{self.name},职称:{self.title},部门:{self.department}")
# 学生数据操作类
class StudentManager:
def __init__(self):
self.students = []
def add_student(self, student):
self.students.append(student)
def display_students(self):
for student in self.students:
student.display()
# 教师数据操作类
class TeacherManager:
def __init__(self):
self.teachers = []
def add_teacher(self, teacher):
self.teachers.append(teacher)
def display_teachers(self):
for teacher in self.teachers:
teacher.display()
# 测试
if __name__ == '__main__':
student_manager = StudentManager()
student_manager.add_student(Student(1, "张三", "一班", 90))
student_manager.add_student(Student(2, "李四", "二班", 80))
student_manager.display_students()
teacher_manager = TeacherManager()
teacher_manager.add_teacher(Teacher(1, "王老师", "教授", "计算机科学与技术"))
teacher_manager.add_teacher(Teacher(2, "李老师", "副教授", "软件工程"))
teacher_manager.display_teachers()
```
在这个程序中,我们定义了一个 Person 类作为学生和教师类的基类,它包含了编号和姓名属性。然后我们分别定义了学生类和教师类,它们继承自 Person 类,并增加了其他属性,如班级、成绩、职称和部门。每个类都有一个 display() 方法,用于输出该类的属性值。
接下来,我们定义了学生数据操作类 StudentManager 和教师数据操作类 TeacherManager,它们分别管理学生和教师数据的输入和输出。它们都包含一个列表,用于存储学生和教师对象。add_student() 和 add_teacher() 方法用于向列表中添加学生和教师对象,display_students() 和 display_teachers() 方法用于输出学生和教师数据。
最后,在测试代码中,我们创建了一个 StudentManager 对象和一个 TeacherManager 对象,向它们中分别添加了一些学生和教师对象,并使用 display_students() 和 display_teachers() 方法输出学生和教师数据。
阅读全文