'''选课系统项目中涉及到诸多数据与功能,要求引入面向对象的思想对其进行高度整合# 1、学校数据与功能整合# 2、课程数据与功能进行整合# 3、学生数据与功能进行整合# 4、讲师数据与功能进行整合# 5、班级数据与功能进行整合ps:不会写的同学,可以先用普通的方式,先把数据与功能都给写好,再考虑基于面向对象的思想进行整合数据部分: 校区的名字:如"老男孩上海校区" 校区的地址:如"上海虹桥" 班级名字 班级所在校区 学生的学校 学生的姓名 学生的年龄 学号 学生的性别 课程名字 课程周期 课程价格 老师的名字 老师的年龄 老师的薪资 老师的等级功能部分: 校区创建完毕后,可以为每个校区创建班级 班级创建完毕后,可以为每个班级创建课程 学生创建完毕后,学生可以选择班级 老师创建完毕后,可以为学生打分'''class School: def __init__(self, name, adress): self.name = name self.adress = adress def school_info(self): print("校区的名字:{} 校区的地址:{}".format(self.name, self.adress)) def create_class(self, class_name): print('在 {} 创建班级 {} 成功'.format(self.name ,class_name)) class_news = Classes(self, class_name) return class_newsclass Classes: def __init__(self, school, name): self.name = name self.school = school def class_info(self): print("班级名字:{} 班级所在的校区名字:{}".format(self.name, self.school.name)) def create_course(self, name, cycle, price): print('为 {} 创建 {} 课程成功!'.format(self.name, name)) course_news = Course(self, name, cycle, price) return course_newsclass Course: def __init__(self, course_class, name, cycle, price): self.name = name self.cycle = cycle self.price = price def show_info(self): print("课程名字:{} 课程周期:{} 课程价格:{}".format(self.name, self.cycle, self.price))class Student: def __init__(self, student_name, student_age, student_ID, student_sex): self.name = student_name self.age = student_age self.ID = student_ID self.sex = student_sex def choice_class(self, student_class): self.student_class = student_class print("学生 {} 选择班级 {} 成功!".format(self.name, student_class)) def student_info(self): print('学生的学校:{} 学生的姓名:{} 学生的年龄:{} 学号:{} 学生的性别:{}'.format(self.name, self.name, self.age, self.ID, self.sex))class Teacher: def __init__(self, name, age, salary, level): self.name = name self.age = age self.salary = salary self.level = level def show_info(self): print("教师的姓名:{} 教师的年龄:{} 教师的薪资:{} 教师的等级:{}".format(self.name, self.age, self.salary, self.level)) def score(self): stu_name = input('请输入学生姓名:').strip() score = input('该学生的分数为:').strip() print('{} 同学的分数为:{}'.format(stu_name, score))
school = School("老男孩上海校区", "上海虹桥")school.school_info()cl_name = input('请输入班级名字:').strip()python14 = school.create_class(cl_name)python14.class_info()course_name = input('请输入课程名字:').strip()python = python14.create_course(course_name, "6个月", 20000)python.show_info()
stu1 = Student("max", 20, 123, "male")choice_class_name = input('请输入想要选择的班级:')stu1.choice_class(choice_class_name)stu1.student_info()
egon = Teacher("egon", 81, 1, "A级")egon.show_info()tank = Teacher("tank", 18, 2, "B级")tank.show_info()tank.score()
来源:https://www.cnblogs.com/hansblogs/p/12655546.html