# "Grade results in B not A as expected" despite me hitting "Get Code"

#1

Below is the code. After getting the same error for a while I hit “get code”. But even the code I got doesn’t result in the A code academy wants as the answer. I keep getting B. Thank you!

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)

def get_average(student):
homework = average(student[“homework”])
quizzes = average(student[“quizzes”])
tests = average(student[“tests”])
return 0.1 * homework + 0.3 * quizzes + 0.6 * tests

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

#2

Hi @timehorizon,

Are you referring to a `B` that gets printed by this statement? …

``````print get_letter_grade(get_average(lloyd))
``````

`lloyd`'s average is less than `90`, so he does not get an `A`.

#3

yup! Code Academy says its supposed to be an A. The exact grade is an 80.55

#4

Could you post the exact message that Codecademy displays?

#5

I went ahead and finished the section and now I cant go back to find the error message. Error message wont come up again. I understand the material well I think I just couldn’t figure that part out. It is part 7 of 9 if that helps. Thank you!

#6

Codecademy performs several tests on your functions, using different sets of data. It is possible that the message you got referred to a test in which Codecademy was expecting an `A`. Perhaps it was checking your function using data for `alice`.

#7

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