Quick Answer
Order dictionaries by key values.
Understanding the Issue
To sort dictionaries by specific keys, use the sorted() function with a key parameter or the operator module.
The Problem
This code demonstrates the issue:
Python
Error
users = [{"name": "Alice", "age": 30}, {"name": "Bob", "age": 25}]
# Need sorted by age
The Solution
Here's the corrected code:
Python
Fixed
# Solution 1: Lambda function
sorted_users = sorted(users, key=lambda x: x["age"])
# Solution 2: operator.itemgetter
from operator import itemgetter
sorted_users = sorted(users, key=itemgetter("age"))
# Solution 3: Multiple sort keys
sorted_users = sorted(users, key=lambda x: (x["age"], x["name"]))
# Solution 4: Reverse sort
sorted_users = sorted(users, key=itemgetter("age"), reverse=True)
Key Takeaways
Use itemgetter for better performance with multiple keys.