Beginner LevelPython
How do dict.get(), dict.setdefault(), and collections.defaultdict prevent KeyError exceptions during lookups?
❓ Interview Prompt: Explain `dict.get(key, default)`, `dict.setdefault(key, default)`, and `collections.defaultdict(factory_func)` for grouping operations.
Handling missing keys in dictionaries can cause 'KeyError' exceptions:
•
'dict.get(key, default)': Returns default value if key is missing without mutating dict.
•
'dict.setdefault(key, default)': Returns value if key exists; otherwise inserts key with default value and returns it.
•
'collections.defaultdict(list)': Automatically initializes missing keys using a factory function upon lookup!
Code Implementation Example
python
from collections import defaultdict
# Group items into lists using defaultdict
groups = defaultdict(list)
words = ['apple', 'avocado', 'banana', 'blueberry']
for word in words:
first_letter = word[0]
groups[first_letter].append(word) # Auto-initializes empty list for new keys!
print(groups['a']) # ['apple', 'avocado']💡Grouping sequence elements using collections.defaultdict.
🎯 Interview Key Takeaway
Use defaultdict to eliminate missing key initialization boilerplate during dictionary grouping operations.
#defaultdict#Dictionary#KeyError#Beginner
Back to all Python Questions→