Python 分组排序代码示例
以下是一个示例代码,演示了如何对列表进行分组排序:
from operator import itemgetter
from itertools import groupby
# 原始数据列表
data = [
{'name': 'John', 'age': 25},
{'name': 'Alice', 'age': 30},
{'name': 'Bob', 'age': 20},
{'name': 'David', 'age': 25},
{'name': 'Eva', 'age': 30}
]
# 按照age分组排序
sorted_data = sorted(data, key=itemgetter('age'))
# 输出结果
for group, items in groupby(sorted_data, key=itemgetter('age')):
print(f'Age {group}:')
for item in items:
print(f' {item}')
上述代码首先使用sorted()函数对原始数据列表进行排序,key参数指定按照age字段进行排序。
然后使用groupby()函数对排序后的列表进行分组,key参数同样指定按照age字段进行分组。
最后,使用循环逐个输出每个分组的结果。
运行上述代码,输出结果如下:
Age 20:
{'name': 'Bob', 'age': 20}
Age 25:
{'name': 'John', 'age': 25}
{'name': 'David', 'age': 25}
Age 30:
{'name': 'Alice', 'age': 30}
{'name': 'Eva', 'age': 30}
原文地址: http://www.cveoy.top/t/topic/bBKi 著作权归作者所有。请勿转载和采集!