-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathclass_practice.py
More file actions
39 lines (25 loc) · 1.45 KB
/
Copy pathclass_practice.py
File metadata and controls
39 lines (25 loc) · 1.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
class Courses(object):
def __init__(self, course_name_list, instructor_name_list, num_students_list):
self.courses_dict = {}
for i, cname in enumerate(course_name_list): # cname is equivalent to course name
instructor_nstudents_tuple = (instructor_name_list[i], num_students_list[i])
self.courses_dict[cname] = instructor_nstudents_tuple
def addCourse(self, course_name, instructor_name, num_stusents):
if course_name not in self.courses_dict:
self.courses_dict[course_name] = (instructor_name, num_stusents)
def addStudents(self, course_name, num_stusents):
if course_name in self.courses_dict:
self.courses_dict[course_name] = (self.getInstructor(course_name), num_stusents + self.getNumStudents(course_name))
def adjustInstructor(self, course_name, instructor_name):
if course_name in self.courses_dict:
self.courses_dict[course_name] = (instructor_name, self.getNumStudents(course_name))
def getInstructor(self, course_name):
if course_name not in self.courses_dict:
return None
else:
return self.courses_dict[course_name][0]
def getNumStudents(self, course_name):
if course_name not in self.courses_dict:
return None
else:
return self.courses_dict[course_name][1]