grades = [100, 100, 90, 40, 80, 100, 85, 70, 90, 65, 90, 85, 50.5]

def print_grades(grades):

for grade in grades:

print(grade)

def grades_sum(grades):

total = 0

for grade in grades:

total += grade

return total

def grades_average(grades):

sum_of_grades = grades_sum(grades)

average = sum_of_grades / float(len(grades))

return average

def grades_variance(scores):

average = grades_average(grades)

variance = 0

for score in scores:

variance += ((average - score) ** 2)

variance = variance / len(scores)

return variance

print grades_variance(grades)

This code gets the following response from CodeCademy unit test:

grades_variance([9, 1, 1, 3, 2, 7, 1]) returned 5937.2559171598 instead of the expected: 9.1020408163

All the test checks have inflated return values. Not sure what is wrong with the code. Any suggestions would be helpful.