Courseiva
Functions, Tuples, Dictionaries and ExceptionshardMultiple ChoiceObjective-mapped

PCEP Practice Question: Functions, Tuples, Dictionaries and Exceptions

Exhibit

d = {'a':1, 'b':2}
for k, v in d.items():
    if k == 'a':
        del d[k]
print('done')

Refer to the exhibit. What happens when this code is executed?

⚠ Common exam trap

The PCEP exam often tests the misconception that deleting dictionary keys during iteration is safe or only causes a KeyError, when in fact Python explicitly raises a RuntimeError to prevent undefined behavior.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

RuntimeError: dictionary changed size during iteration

Modifying a dictionary (adding or deleting keys) while iterating over it with a for loop raises a RuntimeError in Python. The code attempts to delete keys from the dictionary `d` during iteration, which changes the dictionary's size and triggers the error before 'done' is printed.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Prints 'done' with no error

    Why it's wrong here

    Deleting an item during iteration raises RuntimeError.

  • RuntimeError: dictionary changed size during iteration

    Why this is correct

    Correct: The dictionary size changed during iteration.

  • KeyError: 'a'

    Why it's wrong here

    KeyError would occur if accessing a missing key, but here we are deleting an existing key.

  • Nothing; the code runs silently

    Why it's wrong here

    The code raises an exception.

About these practice questions

Courseiva writes every PCEP question from scratch — 498 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This PCEP practice question is part of Courseiva's free Python Institute certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the PCEP exam.