How is everyone doing?


#1



Exercise 9


It shows this: Did you remember to print the average of the class? It looks like "83.8666666667" wasn't printed.


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]
}
students = [lloyd, alice, tyler]
# Add your function below!
def average(numbers):
    total = float(sum(numbers))
    total = total / len(numbers)
    return total
def get_average(student):
    homework = average(student['homework'])
    quizzes = average(student['quizzes'])
    tests = average(student['tests'])
    total = homework * 0.1 + quizzes * 0.3 + tests * 0.6
    return total
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(get_average[lloyd])
def get_class_average(students):
    results = []
    for key in students:
        get = get_average(key)
        results.append(get)
    return average(results)
    print get_letter_grade(get_class_average([lloyd, alice, tyler]))
    print get_class_average


#2

Both print statements are in your function, and the function has already ended since it's reached the return keyword. Currently, it's only printing B. Do you know how to fix this :wink:
Also, you forgot to add an argument in your last function call when printing.


#3

Thank you so much!!!


#4

See my comments here https://discuss.codecademy.com/t/part-of-a-whole/178096/8?u=byterockstar61919


#5

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