Bird
Raised Fist0
Pythonprogramming~5 mins

Why dictionaries are used in Python - Quick Recap

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is a dictionary in Python?
A dictionary is a collection of key-value pairs where each key is unique and used to access its corresponding value quickly.
Click to reveal answer
beginner
Why are dictionaries useful compared to lists?
Dictionaries allow fast lookup of values using keys, unlike lists which require searching through elements one by one.
Click to reveal answer
beginner
How do dictionaries help in real-life programming?
They store data with meaningful keys, like a phone book where you find a number by a person's name, making data easy to find and organize.
Click to reveal answer
intermediate
What happens if you try to use a non-unique key in a dictionary?
The new value replaces the old one for that key, because keys must be unique in a dictionary.
Click to reveal answer
intermediate
How does dictionary access time compare to list access time?
Dictionary access by key is very fast (almost instant), while list access by searching is slower because it checks items one by one.
Click to reveal answer
What is the main advantage of using a dictionary over a list?
AFast access to values using keys
BStores only numbers
CKeeps items in order
DUses less memory
In a dictionary, what must be unique?
AValues
BNeither keys nor values
CBoth keys and values
DKeys
Which of these is a real-life example of a dictionary?
AA phone book with names and numbers
BA list of grocery items
CA stack of books
DA queue of people
What happens if you add a key that already exists in a dictionary?
AAn error occurs
BThe old value is replaced
CThe key is duplicated
DThe dictionary deletes the key
Which operation is generally faster in a dictionary than in a list?
AAdding an item
BRemoving an item
CLooking up a value by key
DSorting items
Explain why dictionaries are preferred when you need to find data quickly.
Think about how you find a phone number by name.
You got /4 concepts.
    Describe a real-life situation where using a dictionary would be helpful.
    Imagine you want to find something fast by a label or name.
    You got /4 concepts.

      Practice

      (1/5)
      1. Why do programmers use dictionaries in Python?
      my_dict = {'name': 'Alice', 'age': 25}
      easy
      A. To create loops automatically
      B. To store data with unique keys for quick access
      C. To perform mathematical calculations faster
      D. To store data in a fixed order only

      Solution

      1. Step 1: Understand dictionary structure

        Dictionaries store data as key-value pairs, where each key is unique.
      2. Step 2: Identify the main use

        This structure allows quick access to values using keys, unlike lists which use indexes.
      3. Final Answer:

        To store data with unique keys for quick access -> Option B
      4. Quick Check:

        Dictionaries = unique keys + fast access [OK]
      Hint: Dictionaries use keys to find data fast [OK]
      Common Mistakes:
      • Thinking dictionaries store data in order only
      • Confusing dictionaries with lists for calculations
      • Believing dictionaries create loops automatically
      2. Which of the following is the correct way to create a dictionary in Python?
      easy
      A. my_dict = ('key1', 'value1', 'key2', 'value2')
      B. my_dict = ['key1', 'value1', 'key2', 'value2']
      C. my_dict = {'key1': 'value1', 'key2': 'value2'}
      D. my_dict = 'key1': 'value1', 'key2': 'value2'

      Solution

      1. Step 1: Recognize dictionary syntax

        Dictionaries use curly braces {} with key:value pairs separated by commas.
      2. Step 2: Compare options

        my_dict = {'key1': 'value1', 'key2': 'value2'} uses correct syntax with braces and colons; others use lists, tuples, or invalid syntax.
      3. Final Answer:

        my_dict = {'key1': 'value1', 'key2': 'value2'} -> Option C
      4. Quick Check:

        Curly braces + key:value pairs = dictionary [OK]
      Hint: Dictionaries use curly braces and colons [OK]
      Common Mistakes:
      • Using square brackets instead of curly braces
      • Using tuples instead of dictionaries
      • Missing curly braces or colons
      3. What will be the output of this code?
      phone_book = {'Alice': '1234', 'Bob': '5678'}
      print(phone_book['Bob'])
      medium
      A. 5678
      B. Bob
      C. 1234
      D. KeyError

      Solution

      1. Step 1: Understand dictionary key access

        Accessing phone_book['Bob'] retrieves the value for key 'Bob'.
      2. Step 2: Find the value for 'Bob'

        In the dictionary, 'Bob' maps to '5678'.
      3. Final Answer:

        5678 -> Option A
      4. Quick Check:

        phone_book['Bob'] = '5678' [OK]
      Hint: Access value by key inside brackets [OK]
      Common Mistakes:
      • Confusing keys and values
      • Expecting the key name as output
      • Mistyping key causing KeyError
      4. Find the error in this code that tries to add a new entry to a dictionary:
      contacts = {'John': '1111'}
      contacts.add('Mary', '2222')
      medium
      A. Missing parentheses in dictionary creation
      B. Dictionary keys cannot be names
      C. Keys must be integers, not strings
      D. Using .add() method which does not exist for dictionaries

      Solution

      1. Step 1: Check method used to add items

        Dictionaries do not have an .add() method; items are added by assignment.
      2. Step 2: Correct way to add entry

        Use contacts['Mary'] = '2222' to add a new key-value pair.
      3. Final Answer:

        Using .add() method which does not exist for dictionaries -> Option D
      4. Quick Check:

        Add items by assignment, not .add() [OK]
      Hint: Add dict items with assignment, not .add() [OK]
      Common Mistakes:
      • Trying to use set methods on dictionaries
      • Confusing dictionary syntax with list methods
      • Assuming keys must be numbers
      5. You have a list of students and their scores:
      students = [('Anna', 85), ('Ben', 90), ('Anna', 95)]

      How can you create a dictionary that stores the highest score for each student?
      hard
      A. Use a loop to update the dictionary only if the new score is higher
      B. Use a dictionary comprehension without conditions
      C. Store all scores in a list as dictionary values
      D. Use a set instead of a dictionary

      Solution

      1. Step 1: Understand the problem

        We want one highest score per student, so duplicates must be checked.
      2. Step 2: Use a loop to update scores

        Loop through the list, and for each student, update the dictionary only if the new score is higher than the current stored score.
      3. Final Answer:

        Use a loop to update the dictionary only if the new score is higher -> Option A
      4. Quick Check:

        Update dict with max score per key [OK]
      Hint: Update dict values only if new value is higher [OK]
      Common Mistakes:
      • Using comprehension without checking scores
      • Storing multiple scores instead of highest
      • Using sets which don't map keys to values