数据分组还在手忙脚乱?Python groupby一招搞定,效率翻倍!
from itertools import groupby
# 假设有一个包含多个字典的列表,我们要根据某个键对字典进行分组
items = [
{'name': 'apple', 'type': 'fruit'},
{'name': 'banana', 'type': 'fruit'},
{'name': 'carrot', 'type': 'vegetable'},
{'name': 'apple', 'type': 'fruit'},
{'name': 'parrot', 'type': 'bird'},
{'name': 'apple', 'type': 'fruit'},
]
# 使用groupby进行分组
grouped_items = {}
for key, group in groupby(items, key=lambda x: x['name']):
grouped_items[key] = list(group)
# 输出分组结果
print(grouped_items)
这段代码首先导入了itertools
模块中的groupby
函数,然后定义了一个包含多个字典的列表items
。通过groupby
以及一个lambda函数来指定分组的键,最后将分组结果存储在一个字典grouped_items
中,其中键是分组的名称,值是具有该名称的项列表。最后打印出分组结果。这个例子展示了如何使用groupby
来对复杂数据进行高效分组。
评论已关闭