# How's Everyone Doing error

#1

I'm receiving the error: Oops, try again. One of the following is missing or broken when we tried to use it: alice, lloyd, tyler, students, get_class_average, get_letter_grade

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]
}

def average(numbers):
total = sum(numbers)
total = float(total)
total = total/len(numbers)

def get_average(student):
homework = average(student["homework"])
quizzes = average(student["quizzes"])
tests = average(student["tests"])

return homework * 0.1 + quizzes * 0.3 + tests * 0.6

if score >= 90:
return "A"
elif score >= 80:
return "B"
elif score >= 70:
return "C"
elif score >= 60:
return "D"
else:
return "F"

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

print get_class_average(students)

#2

All of your print statements need to be in global scope, not within function blocks. None of them are seen.

#3

I'm not entirely familiar with how to do so. Could you explain further for me please?

#4

When code is indented, it is interpreted as being in the code block of the function above it. Remove all indentation on the print statements so they are interpreted in the global namespace.

What's more, when code follows a return statement, it is unreachable and may not even be parsed. It certainly won't run.

#5

Issue wasn't with space. I hadn't put the list of students within the code. I.E students = [lloyd, alice, tyler]

#6

thank you ..I was stuck and it really helped me

#7

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