Python 自动排课系统:分年级、班级、课程,支持不同教师和课时量
下面是一个简单的 Python 代码示例,用于自动排课。该代码使用了班级和课程对象,并根据不同年级、班级和课程的要求进行排课。
class Course:
def __init__(self, name, teacher, hours):
self.name = name
self.teacher = teacher
self.hours = hours
class Classroom:
def __init__(self, grade, class_num):
self.grade = grade
self.class_num = class_num
self.courses = []
def add_course(self, course):
self.courses.append(course)
class School:
def __init__(self):
self.classrooms = []
def add_classroom(self, classroom):
self.classrooms.append(classroom)
def schedule_courses(self):
for classroom in self.classrooms:
print(f'Class {classroom.grade}-{classroom.class_num} courses:')
for course in classroom.courses:
print(f'Course: {course.name}, Teacher: {course.teacher}, Hours: {course.hours}')
print('')
# 创建学校对象
school = School()
# 创建课程对象
math_course = Course('Math', 'Teacher A', 5)
english_course = Course('English', 'Teacher B', 4)
science_course = Course('Science', 'Teacher C', 3)
# 创建班级对象并添加课程
classroom1 = Classroom(1, 1)
classroom1.add_course(math_course)
classroom1.add_course(english_course)
classroom2 = Classroom(1, 2)
classroom2.add_course(science_course)
classroom2.add_course(math_course)
classroom3 = Classroom(2, 1)
classroom3.add_course(english_course)
classroom3.add_course(science_course)
# 将班级添加到学校
school.add_classroom(classroom1)
school.add_classroom(classroom2)
school.add_classroom(classroom3)
# 进行排课
school.schedule_courses()
这段代码将输出每个班级的课程安排,包括课程名称、教师和课时量。你可以根据实际需求修改课程和班级的信息,并添加更多的班级和课程。
原文地址: https://www.cveoy.top/t/topic/qorG 著作权归作者所有。请勿转载和采集!