python - Explain the function -


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 function below! def average(numbers):     total = sum(numbers)     total = float(total)     total /= len(numbers)     return total def get_average(student):     homework = average(student["homework"])     quizzes = average(student["quizzes"])     tests = average(student["tests"])     total = 0.1*homework + 0.3*quizzes + 0.6*tests     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(lloyd) 

my question is, how function get_letter_grade know use functions average , get_average if not specify them? input dictionary argument function has no use them compariisment.

the function get_letter_grade doesn't "know" use average , get_average functions.

what trying achieve more this:

print get_letter_grade(get_average(lloyd)) 

or easier read:

# lloyds average score lloyd_score = get_average(lloyd)  # letter grade corresponding lloyd's average score lloyd_letter_grade = get_letter_grade(lloyd_score)  # print letter grade print lloyd_letter_grade 

Comments

Popular posts from this blog

php - Invalid Cofiguration - yii\base\InvalidConfigException - Yii2 -

How to show in django cms breadcrumbs full path? -

ruby on rails - npm error: tunneling socket could not be established, cause=connect ETIMEDOUT -