8/9 Exam Statistics Error


#1

The error that I keep getting is a variation of "Oops, try again. grades_std_deviation(1.0) returned 18.2776094147 instead of the expected: 1.0"

I know my code is a tiny bit different from the way codecademy wants it to be, but it does output the correct information, as seen below:

Sum of grades is 1045.5
Average of grades is 80.4230769231
Variance of grades is 334.071005917
Standard deviation of grades is 18.2776094147
None

The only thing I don't understand is why I keep getting that error

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(scores):
    total = 0
    i = 0
    for i in range(0, len(scores)):
        total = total + scores[i]
        i = i + 1
    print ("Sum of grades is " + str(total))
    return total

def grades_average(scores):
    total = (grades_sum(scores))
    average = total/float(len(scores))
    print ("Average of grades is " + str(average))
    return average

def grades_variance(scores):
    average = grades_average(scores)
    variance = 0
    total = 0
    for score in scores:
        variance = (average - score)**2 + variance
        total = variance/len(scores)
    print ("Variance of grades is " + str(total))
    return total

def grades_std_deviation(scores):
    variance = grades_variance(grades)
    total = variance**0.5
    print "Standard deviation of grades is " + str(total)
    return total


grades_std_deviation(grades)


#2

It's not complaining about your output though, it's complaining about the return value of a specific function with a specific argument.

So take a look at your function and consider what it would do when the argument is 1.0