Bird
Raised Fist0
Pythonprogramming~5 mins

Accessing values using keys in Python

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
Introduction
You use keys to find and get the exact value you want from a collection called a dictionary. It helps you quickly find information without searching everything.
When you have a list of items with names and you want to find the price of a specific item.
When you store user information like name and age, and want to get the age using the name.
When you keep settings in a program and want to check the value of a particular setting.
When you have a phone book stored as names and numbers and want to find a number by name.
Syntax
Python
value = dictionary[key]
The key must exist in the dictionary, or Python will give an error.
Keys are usually strings or numbers, and they are unique in the dictionary.
Examples
Get the price of 'apple' from the prices dictionary.
Python
prices = {'apple': 2, 'banana': 1}
print(prices['apple'])
Access the 'age' value from the person dictionary.
Python
person = {'name': 'Anna', 'age': 30}
age = person['age']
print(age)
Retrieve the brightness setting value.
Python
settings = {'volume': 10, 'brightness': 70}
print(settings['brightness'])
Sample Program
This program shows how to get and print values from a dictionary using keys.
Python
student = {'name': 'John', 'grade': 'A', 'age': 16}
print(f"Name: {student['name']}")
print(f"Grade: {student['grade']}")
print(f"Age: {student['age']}")
OutputSuccess
Important Notes
If you try to access a key that does not exist, Python will raise a KeyError.
You can use the get() method to avoid errors and provide a default value if the key is missing.
Keys must be immutable types like strings, numbers, or tuples.
Summary
Use keys to quickly find values in a dictionary.
Keys must exist or use get() to avoid errors.
Dictionaries store data in key-value pairs for easy access.

Practice

(1/5)
1. What is the correct way to access the value associated with the key 'name' in the dictionary person = {'name': 'Alice', 'age': 30}?
easy
A. person.get('age')
B. person.name
C. person['name']
D. person['Alice']

Solution

  1. Step 1: Identify the dictionary and key

    The dictionary is person and the key to access is 'name'.
  2. Step 2: Use correct syntax to access value by key

    In Python, dictionary values are accessed using square brackets and the key as a string: person['name'].
  3. Final Answer:

    person['name'] -> Option C
  4. Quick Check:

    Access value by key = person['name'] [OK]
Hint: Use square brackets with the key string to get value [OK]
Common Mistakes:
  • Using dot notation like person.name (not valid for dict)
  • Using a value instead of key inside brackets
  • Accessing a different key than asked
2. Which of the following is the correct syntax to safely get the value for key 'city' from dictionary data without causing an error if the key does not exist?
easy
A. data['city']
B. data.get('city')
C. data.city
D. data['City']

Solution

  1. Step 1: Understand safe access in dictionaries

    Using data['city'] causes an error if the key is missing. Using data.get('city') returns None instead.
  2. Step 2: Identify correct method for safe access

    The get() method is designed to safely access keys without errors.
  3. Final Answer:

    data.get('city') -> Option B
  4. Quick Check:

    Safe key access = data.get('city') [OK]
Hint: Use get() to avoid errors if key missing [OK]
Common Mistakes:
  • Using square brackets which raise KeyError if key missing
  • Using dot notation which is invalid for dict
  • Using wrong key case causing KeyError
3. What will be the output of this code?
info = {'a': 1, 'b': 2, 'c': 3}
print(info['b'])
medium
A. 2
B. 1
C. 3
D. KeyError

Solution

  1. Step 1: Identify the dictionary and key accessed

    The dictionary info has key 'b' with value 2.
  2. Step 2: Access the value using the key

    The code prints info['b'], which is 2.
  3. Final Answer:

    2 -> Option A
  4. Quick Check:

    info['b'] = 2 [OK]
Hint: Look up the key's value directly in the dictionary [OK]
Common Mistakes:
  • Confusing key with value
  • Expecting KeyError when key exists
  • Mixing up keys and values
4. The following code causes an error. What is the problem?
data = {'x': 10, 'y': 20}
print(data['z'])
medium
A. TypeError because keys must be integers
B. SyntaxError due to wrong brackets
C. No error, prints 0
D. KeyError because 'z' is not in the dictionary

Solution

  1. Step 1: Check if key exists in dictionary

    The key 'z' is not present in data.
  2. Step 2: Understand error caused by missing key

    Accessing a missing key with square brackets raises a KeyError.
  3. Final Answer:

    KeyError because 'z' is not in the dictionary -> Option D
  4. Quick Check:

    Missing key access = KeyError [OK]
Hint: Check if key exists before accessing or use get() [OK]
Common Mistakes:
  • Assuming missing keys return 0 or None
  • Confusing syntax error with runtime error
  • Using wrong bracket types
5. Given the dictionary grades = {'Alice': 85, 'Bob': 92, 'Charlie': 78}, which code snippet correctly prints Bob's grade or 'Not found' if Bob is not in the dictionary?
hard
A. print(grades.get('Bob', 'Not found'))
B. print(grades['Bob'] or 'Not found')
C. print(grades['bob'] or 'Not found')
D. print(grades.get('Bob'))

Solution

  1. Step 1: Understand the goal

    We want to print Bob's grade if present, otherwise print 'Not found'.
  2. Step 2: Analyze each option

    print(grades['Bob'] or 'Not found') will raise KeyError if key missing because access happens before 'or'. print(grades.get('Bob', 'Not found')) uses get() with default value, which is concise and safe. print(grades['bob'] or 'Not found') uses wrong key case and will fail. print(grades.get('Bob')) prints None if key missing, not 'Not found'.
  3. Final Answer:

    print(grades.get('Bob', 'Not found')) -> Option A
  4. Quick Check:

    Use get() with default for safe access [OK]
Hint: Use get(key, default) to handle missing keys easily [OK]
Common Mistakes:
  • Using wrong key case causing missing key
  • Not providing default value in get()
  • Assuming or operator works for missing keys