Bird
Raised Fist0
Intro to Computingfundamentals~10 mins

Dictionaries and key-value pairs in Intro to Computing - Flowchart & Logic Diagram

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
Process Overview

A dictionary is a way to store data using pairs of keys and values. Each key is unique and points to a value, like a label on a box telling you what is inside. This flowchart shows how to look up a value by its key in a dictionary.

Flowchart
Rectangle
Yes No
Rectangle
Rectangle
This flowchart shows the steps to find a value in a dictionary by checking if the key exists and returning the value or a 'Key not found' message.
Step-by-Step Trace - 4 Steps
Step 1: Start and receive dictionary {'apple': 3, 'banana': 5} and key 'banana'
Step 2: Check if 'banana' is a key in the dictionary
Step 3: Return the value associated with 'banana'
Step 4: End the process
Diagram
Dictionary Memory Layout:
+-------------------+
| Key     | Value   |
+-------------------+
| 'apple' |   3     |
+-------------------+
| 'banana'|   5     |
+-------------------+

Lookup Process:
Key: 'banana' --> Find in keys --> Return 5
This diagram shows how the dictionary stores keys and values in pairs and how the lookup finds the value for a given key.
Flowchart Quiz - 3 Questions
Test your understanding
What happens if the key is not found in the dictionary?
AReturn the first value in the dictionary
BReturn 'Key not found' message
CAdd the key with a default value
DStop without any message
Key Result
A dictionary stores data as unique keys paired with values, allowing quick lookup by checking if the key exists and returning its value.

Practice

(1/5)
1. What is a dictionary in computing fundamentals?
easy
A. A sequence of characters forming a word
B. A list of numbers sorted in order
C. A type of loop used for iteration
D. A collection of key-value pairs for storing data

Solution

  1. Step 1: Understand the definition of a dictionary

    A dictionary stores data as pairs where each key is linked to a value.
  2. Step 2: Compare with other data types

    Unlike lists or strings, dictionaries use keys to quickly find values.
  3. Final Answer:

    A collection of key-value pairs for storing data -> Option D
  4. Quick Check:

    Dictionary = key-value pairs [OK]
Hint: Remember: dictionary = keys + values [OK]
Common Mistakes:
  • Confusing dictionary with list or string
  • Thinking dictionary is a type of loop
  • Believing dictionary stores only numbers
2. Which of the following is the correct way to create a dictionary with keys 'name' and 'age'?
easy
A. ['name' = 'Alice', 'age' = 30]
B. {'name': 'Alice', 'age': 30}
C. {'name' -> 'Alice', 'age' -> 30}
D. ('name': 'Alice', 'age': 30)

Solution

  1. Step 1: Identify correct dictionary syntax

    Dictionaries use curly braces {} with key:value pairs separated by commas.
  2. Step 2: Check each option

    {'name': 'Alice', 'age': 30} uses correct syntax with colons and curly braces; others use wrong symbols or brackets.
  3. Final Answer:

    {'name': 'Alice', 'age': 30} -> Option B
  4. Quick Check:

    Dictionary syntax = curly braces + colons [OK]
Hint: Use curly braces and colons for dictionaries [OK]
Common Mistakes:
  • Using square brackets instead of curly braces
  • Using '=' or '->' instead of ':'
  • Using parentheses instead of braces
3. What will be the output of the following code?
person = {'name': 'Bob', 'age': 25}
print(person['age'])
medium
A. Bob
B. Error
C. 25
D. 'age'

Solution

  1. Step 1: Understand dictionary access by key

    Accessing person['age'] retrieves the value linked to key 'age'.
  2. Step 2: Identify the value for key 'age'

    The value stored is 25, so print(person['age']) outputs 25.
  3. Final Answer:

    25 -> Option C
  4. Quick Check:

    person['age'] = 25 [OK]
Hint: Keys fetch their values directly from dictionary [OK]
Common Mistakes:
  • Printing the key name instead of value
  • Confusing key with value
  • Expecting the whole dictionary to print
4. Identify the error in this dictionary code:
data = {'x': 10, 'y': 20, 'x': 30}
print(data['x'])
medium
A. Duplicate keys cause the last value to overwrite earlier ones
B. Syntax error due to missing comma
C. Keys must be numbers, not strings
D. Cannot print dictionary values directly

Solution

  1. Step 1: Check for duplicate keys in dictionary

    The key 'x' appears twice; dictionaries keep only the last value for duplicates.
  2. Step 2: Understand output of print statement

    Printing data['x'] shows 30, the last assigned value, overwriting 10.
  3. Final Answer:

    Duplicate keys cause the last value to overwrite earlier ones -> Option A
  4. Quick Check:

    Duplicate keys overwrite previous values [OK]
Hint: Duplicate keys keep only last value [OK]
Common Mistakes:
  • Thinking duplicate keys cause syntax error
  • Expecting both values to be stored
  • Believing keys must be numbers
5. Given a list of students and their scores:
students = [('Anna', 85), ('Ben', 92), ('Cara', 85), ('Dan', 92)]

Which dictionary comprehension creates a dictionary mapping each student to their score?
hard
A. {name: score for name, score in students}
B. {score: name for name, score in students}
C. {name: score if score > 90 else 0 for name, score in students}
D. {score: name if name.startswith('A') else 'Unknown' for name, score in students}

Solution

  1. Step 1: Understand the goal

    Create a dictionary with student names as keys and scores as values.
  2. Step 2: Analyze each comprehension

    {name: score for name, score in students} correctly maps name: score. {score: name for name, score in students} reverses keys and values, causing score keys to overwrite. Options C and D add conditions changing values or keys incorrectly.
  3. Final Answer:

    {name: score for name, score in students} -> Option A
  4. Quick Check:

    Keys = names, Values = scores [OK]
Hint: Keys are unique; use names as keys to avoid overwriting [OK]
Common Mistakes:
  • Using scores as keys causing overwrites
  • Adding conditions that change keys incorrectly
  • Confusing key-value order in comprehension