class Student:
def __init__(self, name, year):
self.name = name
self.year = year
self.grades = []
def add_grade(self, grade):
if type(grade) == Grade:
self.grades.append(grade)
def get_average(self):
grade_score = [element.score for element in self.grades]
return sum(grade_score)/len(grade_score)
class Grade:
def __init__(self, score):
self.score = score
pieter = Student("Pieter Bruegel the Elder", 8)
pieter.add_grade(Grade(100))
pieter.add_grade(Grade(70))
print(pieter.grades[0].score)
print(pieter.get_average())
So I think I figured out how to calculate the average score while using objects of the class Grade to append “self.grades”, see code above.
Just for my deeper understanding; what is the point of creating a custom class for Grade if in the end we convert back to integer datatype for the calculations anyway?