以下是一个示例代码,可以按照指定的组ID将列表进行分组:
from collections import defaultdict
def group_by_group_id(lst):
groups = defaultdict(list)
for item in lst:
group_id = item['group_id']
groups[group_id].append(item)
return groups
# 示例数据
data = [
{'name': 'John', 'group_id': 1},
{'name': 'Anna', 'group_id': 2},
{'name': 'Peter', 'group_id': 1},
{'name': 'Maria', 'group_id': 2},
{'name': 'Tom', 'group_id': 3},
]
grouped_data = group_by_group_id(data)
# 打印分组结果
for group_id, items in grouped_data.items():
print(f'Group ID: {group_id}')
for item in items:
print(f' - {item["name"]}')
运行以上代码,输出结果如下:
Group ID: 1
- John
- Peter
Group ID: 2
- Anna
- Maria
Group ID: 3
- Tom
以上代码中,我们使用了collections
模块中的defaultdict
来创建一个默认值为列表的字典。然后,我们遍历列表中的每个元素,获取其组ID,并将元素添加到对应的组中。最后,我们返回分组结果。
下一篇:按照指定格式格式化日期