Напишите функцию, которая принимает список словарей и группирует значения по определённому ключу. Это полезно для агрегации данных, предварительной обработки и подготовки к анализу.
Решение задачи🔽
from collections import defaultdict
def group_by_key(data, key):
grouped = defaultdict(list)
for item in data:
grouped[item[key]].append(item)
return dict(grouped)
# Пример использования
data = [
{"category": "fruit", "name": "apple"},
{"category": "vegetable", "name": "carrot"},
{"category": "fruit", "name": "banana"},
{"category": "vegetable", "name": "lettuce"},
]
result = group_by_key(data, "category")
print(result)
# Ожидаемый результат:
# {
# 'fruit': [{'category': 'fruit', 'name': 'apple'}, {'category': 'fruit', 'name': 'banana'}],
# 'vegetable': [{'category': 'vegetable', 'name': 'carrot'}, {'category': 'vegetable', 'name': 'lettuce'}]
# }