How does Variances work? I got 334 just want to understand why this would be right


I have completed the variance exercise and I just want to understand a bit about variance.
I tried to google it and its seems more complicated than i thought.

I got a value 334.071005917 for my code. Is that correct?

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(scores)
    variance = 0
    for score in scores:
        variance += (average - score) ** 2
    result = variance / len(scores)
    return result
print grades_variance(grades)


Your result of 334.071005917 is correct.

You can post a link to an article that you read on variance, if you feel that it was helpful, or if you have some questions about it.

Variance is a measure of how "spread out" a set of data is from the mean. This statement, with its squared term, demonstrates that the degree that outlying data differs from the mean plays an important role in the result ...

variance += (average - score) ** 2


I didnt really know what to expect for a variance value as i never used them before directly.