Start learning free

LESSON 174 OF 410 · PROJECTS: EVERYDAY PROGRAMS

Report Card V5 - Subject to Grade Dictionary in Python

Practice

Use a dictionary, a loop, and conditionals to print each subject with its letter grade in alphabetical order.

You start with:

grades = {"Math": 92, "English": 78, "Science": 85, "History": 67}

Build:

English: C
History: D
Math: A
Science: B

Rules:

  • Visit the subjects in alphabetical order.
  • Look up each subject's score in the dictionary and apply the grading scale (90+ A, 80s B, 70s C, 60s D, else F).
  • On each iteration print the subject, a colon and a space, then the grade, for example English: C.

for subject in sorted(grades): walks the keys alphabetically.

grades = {"Math": 92, "English": 78, "Science": 85, "History": 67}

for subject in sorted(grades):
    score = grades[subject]
    if score >= 90:
        grade = "A"
    elif score >= 80:
        grade = "B"
    elif score >= 70:
        grade = "C"
    elif score >= 60:
        grade = "D"
    else:
        grade = "F"
    print(subject + ": " + grade)

STEP 1 OF 8
    Ctrl + Enter to check

    Report Card V5 in Python

    Keep going with PythonAbout 340 step-by-step lessons, from your first line of code to coding interviews. Free to start.
    Start learning free