8. Part of the whole


#1



https://www.codecademy.com/en/courses/python-beginner-en-qzsCL/1/4?curriculum_id=4f89dab3d788890003000096


Oops, try again. get_class_average([alice]) returned 83.8666666667 instead of 91.15 as expected


I don't know what I'm doing wrong. please help. I thought by looping student in students, all three of them would have their average number in the result making that a list. Then with return average(results) would calculate my answer.


lloyd = {
    "name": "Lloyd",
    "homework": [90.0, 97.0, 75.0, 92.0],
    "quizzes": [88.0, 40.0, 94.0],
    "tests": [75.0, 90.0]
}
alice = {
    "name": "Alice",
    "homework": [100.0, 92.0, 98.0, 100.0],
    "quizzes": [82.0, 83.0, 91.0],
    "tests": [89.0, 97.0]
}
tyler = {
    "name": "Tyler",
    "homework": [0.0, 87.0, 75.0, 22.0],
    "quizzes": [0.0, 75.0, 78.0],
    "tests": [100.0, 100.0]
}

# Add your function below!
def average(numbers):
    total = sum(numbers)
    total = float(total)
    total = total / len(numbers)
    return total
    
def get_average(student):
    homework = average(student['homework'])
    quizzes = average(student['quizzes'])
    tests = average(student['tests'])
    return .1 * homework + .3 * quizzes + .6 * tests
    
def get_letter_grade(score):
    if score >= 90:
        return 'A'
    elif score >= 80:
        return 'B'
    elif score >= 70:
        return 'C'
    elif score >= 60:
        return 'D'
    else:
        return 'F'
print get_letter_grade(lloyd)

def get_class_average(student):
    results = []
    for student in students:
        results.append(get_average(student))
    return average(results)


#2

Check the parameter of function get_class_average().


#3

You want to change the name of the data in the for loop, so you want to make it

for names in students:
results.append(get_average(names))
return average(results)

I have reason to believe that the reason you kept on getting an error is that in your for loop you gave the data in your list the same name as your list (i.e you named them both students).


#4

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.