请问有人能帮助我理解吗?我不明白这一行发生了什么或它起作用的原因:course_running.add_student(self)
。
我认为这是一个OOP概念,但任何人都可以帮助这个更清楚吗?
class Student:
def __init__(self, name, student_number):
self.name = name
self.student_number = student_number
self.classes = []
def enrol(self, course_running):
self.classes.append(course_running)
course_running.add_student(self)
class CourseRunning:
def __init__(self, course, year):
self.course = course
self.year = year
self.students = []
def add_student(self, student):
self.students.append(student)
答案 0 :(得分:1)
CourseRunning
是类course_running.add_student(self)
的对象,add_student
正在调用名为students
的类的方法,该类将学生附加到(
[Measures].[Number of accounts]
,[Account Status].[Account Status].&[Anonymous]
,[Account Status].[Account Status].&[Closed]
,[Account Status].[Account Status].&[Closed due to Fraud]
,[Account Status].[Account Status].&[To be closed]
,[Account Status].[Account Status].&[<unknown>]
)
列表。
答案 1 :(得分:1)
enrol()
课程中的Student
函数有两个参数: self
和course_running
。
self
是您当前班级的实例(Student
)。
这就是为什么你的add_student()
函数(它还带有两个参数:self
(CourseRunning
类的当前实例)和student
(这只是一个< strong> Student
的实例))。
这就是为什么您可以将self
中的 enrol()
作为 student
传递给add_student()
。