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
Explore Dictionary Keys, Values, and Items
๐ Scenario: You work in a small bookstore. You have a dictionary that stores book titles as keys and their prices as values.You want to learn how to get just the book titles, just the prices, and both together in pairs.
๐ฏ Goal: Build a program that shows how to get the keys, values, and items from a dictionary.
๐ What You'll Learn
Create a dictionary called books with exact entries: 'Python Basics': 29.99, 'Data Science': 39.95, 'Machine Learning': 49.50
Create a variable called book_titles that stores the keys of books
Create a variable called book_prices that stores the values of books
Create a variable called book_items that stores the items of books
Print book_titles, book_prices, and book_items in that order
๐ก Why This Matters
๐ Real World
Dictionaries are used to store related data, like product names and prices, user information, or settings. Knowing how to get keys, values, and items helps you access and use this data easily.
๐ผ Career
Many programming jobs require working with dictionaries or similar data structures. Being comfortable with keys, values, and items is essential for data processing, web development, and automation tasks.
Progress0 / 4 steps
1
Create the books dictionary
Create a dictionary called books with these exact entries: 'Python Basics': 29.99, 'Data Science': 39.95, 'Machine Learning': 49.50
Python
Hint
Use curly braces {} to create a dictionary with keys and values separated by colons.
2
Get the keys and values
Create a variable called book_titles that stores the keys of books using the keys() method. Then create a variable called book_prices that stores the values of books using the values() method.
Python
Hint
Use dictionary.keys() to get all keys and dictionary.values() to get all values.
3
Get the items
Create a variable called book_items that stores the items of books using the items() method.
Python
Hint
Use dictionary.items() to get all key-value pairs as tuples.
4
Print the keys, values, and items
Print the variables book_titles, book_prices, and book_items in that order, each on its own line.
Python
Hint
Use three print() statements, one for each variable.
Practice
(1/5)
1. Which method would you use to get all the keys from a Python dictionary my_dict?
easy
A. my_dict.values()
B. my_dict.get()
C. my_dict.items()
D. my_dict.keys()
Solution
Step 1: Understand dictionary methods
The keys() method returns all keys in the dictionary.
Step 2: Match method to requirement
Since we want all keys, my_dict.keys() is the correct method.
Final Answer:
my_dict.keys() -> Option D
Quick Check:
keys() = my_dict.keys() [OK]
Hint: Keys come from keys(), values from values(), pairs from items() [OK]
Common Mistakes:
Confusing keys() with values()
Using get() which retrieves a single value
Using items() which returns key-value pairs
2. Which of the following is the correct syntax to get all values from a dictionary data?
easy
A. data.values()
B. data.get_values()
C. data.values
D. values(data)
Solution
Step 1: Recall method syntax
Dictionary methods require parentheses to call them, so values() is correct.
Step 2: Check each option
data.values misses parentheses, get_values() and values(data) are invalid.
Final Answer:
data.values() -> Option A
Quick Check:
values() needs parentheses [OK]
Hint: Always add () to call dictionary methods like values() [OK]
Common Mistakes:
Forgetting parentheses after method name
Using non-existent methods like get_values()
Trying to call values() as a function with dictionary argument
The items() method returns key-value pairs as tuples.
Step 2: Convert items to list
Using list() converts these pairs into a list of tuples: [('a', 1), ('b', 2)].
Final Answer:
[('a', 1), ('b', 2)] -> Option A
Quick Check:
items() = list of (key, value) pairs [OK]
Hint: items() returns pairs; list() shows them as list of tuples [OK]
Common Mistakes:
Thinking items() returns only keys or only values
Expecting a dictionary instead of list of tuples
Confusing items() with keys() or values()
4. Find the error in this code snippet:
my_dict = {'x': 10, 'y': 20}
for key, value in my_dict.keys():
print(key, value)
medium
A. Syntax error in for loop
B. keys() returns only keys, cannot unpack into two variables
C. Missing parentheses after print
D. No error, code runs fine
Solution
Step 1: Check what keys() returns
keys() returns only keys, so each item is a single value, not a pair.
Step 2: Understand unpacking in for loop
The loop tries to unpack each key into two variables, causing an error.
Final Answer:
keys() returns only keys, cannot unpack into two variables -> Option B
Quick Check:
keys() = keys only, no pairs [OK]
Hint: keys() gives one value per item; items() gives pairs [OK]
Common Mistakes:
Trying to unpack keys() into two variables
Confusing keys() with items()
Assuming keys() returns key-value pairs
5. You have a dictionary grades = {'Alice': 85, 'Bob': 92, 'Charlie': 78}. Which code snippet correctly prints each student's name and grade using dictionary methods?
hard
A. for name, grade in grades.values():
print(name, grade)
B. for name, grade in grades.keys():
print(name, grade)
C. for name, grade in grades.items():
print(name, grade)
D. for grade in grades.values():
print(grade)
Solution
Step 1: Identify method to get pairs
items() returns key-value pairs, perfect for name and grade.
Step 2: Check each option
for name, grade in grades.values():
print(name, grade) unpacks grades.values() (single values): error. for name, grade in grades.keys():
print(name, grade) unpacks grades.keys() (single keys): error. for grade in grades.values():
print(grade) prints only grades. for name, grade in grades.items():
print(name, grade) correctly unpacks grades.items() pairs.
Final Answer:
for name, grade in grades.items(): print(name, grade) -> Option C
Quick Check:
items() gives key-value pairs for easy unpacking [OK]
Hint: Use items() to loop over keys and values together [OK]