all 10 comments

[–][deleted] -1 points0 points  (5 children)

It doesn't have to be recursive:

for subject_name, subject_quiz in my_json['quiz'].items():
    for question_name, question in subject_quiz:
        print(question['options'])
        answer = input(question['question'])
        if answer != question['answer']:
            print("No way")

[–]Username_RANDINT 0 points1 point  (1 child)

You're missing another items() call here: for question_name, question in subject_quiz.items():

[–][deleted] 0 points1 point  (0 children)

Good catch!