8/9 part of a whole


Same code but showing this error **"Oops, try again. getclass_average([alice]) resulted in an error: list indices must be integers, not str"**_

8/9 Part of the Whole - my code is not wrong

line 52, you call get_average() with an argument of students, but students is a list, get_average is designed to calculate the average of a single student


yeah thanx... i rectified my error

Now it shows "
Oops, try again. get_class_average([lloyd]) returned 91.15 instead of 80.55 as expected"


can you post an updated version of your full code? Please copy paste it so we can run it rather then having to look at an image


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):
    print total/len(numbers)
    return total/len(numbers)
def get_average(student):
    return sum_avg

def get_letter_grade(score):
    if score>=90:
        return "A"
    elif score>=80 and score<90:
        return "B"
    elif score>=70 and score<80:
        return "C"
    elif score>=60 and score<70:
        return "D"
        return "F"

def get_class_average(students):
    for student in students:
    return average(results)


from the instructions:

calculate get_average(student) and then call results.append() with that result.

not sure why you calculate the average for alice, what if the class consist of lloyd? or lloyd and tyler?


i didn't understand..what should i do?


well, you need to calculate the average (get_average) of student and append it to results


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