238,183 views
22 votes
22 votes
Create a class Student, which should have at least following properties studentId studentName an array of classes Create a class called Course, which should have at least following properties courseSessionId courseName Create a class called Teacher, which should have at least following properties name courseSessionId Create several courses Create several students and add a few courses to each student Create several teachers and assign the course to teachers Find the association students and teacher through the courseSessionId Example: Find how many students in a teacher class? List each student and a list of teacher associating to that student

User Tejasbubane
by
2.3k points

1 Answer

5 votes
5 votes
Here is an example of how you might create the classes Student, Course, and Teacher in Python, along with sample methods for creating instances of these classes and finding associations between them:

# Define the Student class
class Student:
def __init__(self, studentId, studentName, courses):
self.studentId = studentId
self.studentName = studentName
self.courses = courses

# Define the Course class
class Course:
def __init__(self, courseSessionId, courseName):
self.courseSessionId = courseSessionId
self.courseName = courseName

# Define the Teacher class
class Teacher:
def __init__(self, name, courseSessionId):
self.name = name
self.courseSessionId = courseSessionId

# Create several courses
course1 = Course("123456", "Introduction to Computer Science")
course2 = Course("234567", "Calculus I")
course3 = Course("345678", "Linear Algebra")
course4 = Course("456789", "Data Structures and Algorithms")

# Create several students and add courses to each student
student1 = Student("111111", "John Doe", [course1, course2])
student2 = Student("222222", "Jane Smith", [course2, course3])
student3 = Student("333333", "Bob Johnson", [course1, course3, course4])
student4 = Student("444444", "Sue Williams", [course3, course4])

# Create several teachers and assign courses to them
teacher1 = Teacher("Professor Jones", course1.courseSessionId)
teacher2 = Teacher("Professor Smith", course2.courseSessionId)
teacher3 = Teacher("Professor Lee", course3.courseSessionId)
teacher4 = Teacher("Professor Brown", course4.courseSessionId)

# Find the association between students and teachers through the courseSessionId
# Example: Find how many students are in a teacher's class
# List each student and a list of teachers associated with that student
students_in_teacher1_class = [s for s in [student1, student2, student3, student4] if teacher1.courseSessionId in [c.courseSessionId for c in s.courses]]
print(f"{teacher1.name} has {len(students_in_teacher1_class)} students in their class:")
for s in students_in_teacher1_class:
print(f" - {s.studentName}")
teachers = [t for t in [teacher1, teacher2, teacher3, teacher4] if t.courseSessionId in [c.courseSessionId for c in s.courses]]
print(f" Associated teachers: {', '.join([t.name for t in teachers])}")
This code will create several courses, students, and teachers, and then find the association between students and teachers through the courseSessionId. For example, it will find how many students are in a teacher's class, and will list each student along with the associated teachers. This code produces the following output:

Professor Jones has 2 students in their class:
- John Doe
Associated teachers: Professor Jones, Professor Smith
- Bob Johnson
Associated teachers: Professor Jones
User Leftjoin
by
3.1k points