5.3
python面向对象基础训练
• 所花时间:5
• 代码行数:194
• 博客容量:1
• 代码如下:
class People:
def __init__(self, name, gender, age):
self.name = name
self.gender = gender
self.age = age
def display(self):
print("姓名:", self.name)
print("性别:", self.gender)
print("年龄:", self.age)
class Student(People):
def __init__(self, name, gender, age, student_id, admission_date, admission_score):
super().__init__(name, gender, age)
self.student_id = student_id
self.admission_date = admission_date
self.admission_score = admission_score
#打印方法
def display(self):
super().display()
print("学号:", self.student_id)
print("入学时间", self.admission_date)
print("入学成绩:", self.admission_score)
class Teacher(People):
def __init__(self, name, gender, age, position, department, working_years):
super().__init__(name, gender, age)
self.position = position
self.department = department
self.working_years = working_years
def display(self):
super().display()
print("职位:", self.position)
print("部门:", self.department)
print("工龄:", self.working_years)
class Graduate(Student):
def __init__(self, name, gender, age, student_id, admission_date, admission_score, research_area, supervisor):
super().__init__(name, gender, age, student_id, admission_date, admission_score)
self.research_area = research_area
self.supervisor = supervisor
def display(self):
super().display()
print("研究方向:", self.research_area)
print("导师:", self.supervisor)
class GradOnWork(Graduate):
def __init__(self, name, gender, age, student_id, admission_date, admission_score, research_area, supervisor,
employment_date, employer):
super().__init__(name, gender, age, student_id, admission_date, admission_score, research_area, supervisor)
self.employment_date = employment_date
self.employer = employer
def display(self):
super().display()
print("工作时间:", self.employment_date)
print("Employer:", self.employer)
def main():
# 创建对象并测试
p = People("小军", "男", 25)
print("人员信息:")
p.display()
print()
s = Student("小丽", "女", 20, "S001", "2022-09-01", 95)
print("学生信息:")
s.display()
print()
t = Teacher("小刚", "男", 35, "Professor", "Computer Science", 10)
print("教师信息:")
t.display()
print()
g = Graduate("小红", "女", 22, "G001", "2020-09-01", 88, "Machine Learning", "Dr. Smith")
print("毕业信息:")
g.display()
print()
gw = GradOnWork("小明", "男", 24, "G002", "2021-09-01", 90, "Data Science", "某某", "2024-03-15", "ABC Company")
print("毕业工作信息:")
gw.display()
if __name__ == "__main__":
main()
浙公网安备 33010602011771号