# File: courseSchedule.py # Purpose: A class to represent a course schedule. # Author: TODO # # Collaboration statement: TODO ############################################################# from course import Course class CourseSchedule: def __init__(self, courses = []): self.courses = courses[:] # copy the courses def addCourse(self, course): pass # TODO def getNumCourses(self): return 0 # TODO def getTotalCredits(self): return 0 # TODO def getAverageEffort(self): return 0 # TODO def getMedianValue(self): return 0 # TODO ############################################################# def readScheduleFromCSV(filename): # TODO: build a CourseSchedule from the data # in the given filename; return the CourseSchedule pass ############################################################# def testCourseSchedule(): # Build our test schedule courses = [Course("A", 6, 5, 10), Course("B", 1, 6, 8), Course("C", 6, 3, 4), Course("D", 6, 8, 2)] schedule = CourseSchedule(courses) # Print some statistics print("Number of courses:", schedule.getNumCourses()) # 4 print("Total credits: ", schedule.getTotalCredits()) # 19 print("Average effort: ", schedule.getAverageEffort()) # 5.5 print("Median value: ", schedule.getMedianValue()) # 6.0 # Add a new course newCourse = Course("E", 2, 4, 7) schedule.addCourse(newCourse) # Print some statistics print() print("Number of courses:", schedule.getNumCourses()) # 5 print("Total credits: ", schedule.getTotalCredits()) # 21 print("Average effort: ", schedule.getAverageEffort()) # 5.2 print("Median value: ", schedule.getMedianValue()) # 7 def testReadScheduleFromCSV(): # Parse the schedule of all CS courses filepath = "courseData.csv" schedule = readScheduleFromCSV(filepath) # Print some statistics print("# Testing readScheduleFromCSV:") print("------------------------------") print("Number of courses:", schedule.getNumCourses()) # 36 print("Total credits: ", schedule.getTotalCredits()) # 210 print("Average effort: ", schedule.getAverageEffort()) # 5.444444444444445 print("Median value: ", schedule.getMedianValue()) # 4.5 if __name__ == "__main__": testCourseSchedule()