首页 > 编程语言 > 详细

python groupby

时间:2017-06-17 16:41:32      阅读:547      评论:0      收藏:0      [点我收藏+]
 1 from itertools import groupby
 2 
 3 bom = [dict(bomNo="BOM201704030002", parentItemNo="04.01.00001", childItemNo="02.11.00008"),
 4        dict(bomNo="BOM201704030004", parentItemNo="03.08.10.00002", childItemNo="03.02.04.00002"),
 5        dict(bomNo="BOM201704030002", parentItemNo="04.01.00001", childItemNo="03.08.10.00001"),
 6        dict(bomNo="BOM201704030004", parentItemNo="03.08.10.00002", childItemNo="03.05.05.00001"),
 7        dict(bomNo="BOM201704030002", parentItemNo="04.01.00001", childItemNo="02.04.00001"),
 8        dict(bomNo="BOM201704030004", parentItemNo="03.08.10.00002", childItemNo="03.09.10.00001"),]
 9 bom.sort(key= lambda x: x[‘bomNo‘])
10 
11 for k, grp in groupby(bom, key=lambda x: x["bomNo"]):
12     print("----", k, "----")
13     for item in grp:
14         print(item)

output:

 1 "C:\Program Files\Python35\python.exe" C:/Users/jonney/Desktop/untitled/test.py
 2 ---- BOM201704030002 ----
 3 {‘parentItemNo‘: ‘04.01.00001‘, ‘bomNo‘: ‘BOM201704030002‘, ‘childItemNo‘: ‘02.11.00008‘}
 4 {‘parentItemNo‘: ‘04.01.00001‘, ‘bomNo‘: ‘BOM201704030002‘, ‘childItemNo‘: ‘03.08.10.00001‘}
 5 {‘parentItemNo‘: ‘04.01.00001‘, ‘bomNo‘: ‘BOM201704030002‘, ‘childItemNo‘: ‘02.04.00001‘}
 6 ---- BOM201704030004 ----
 7 {‘parentItemNo‘: ‘03.08.10.00002‘, ‘bomNo‘: ‘BOM201704030004‘, ‘childItemNo‘: ‘03.02.04.00002‘}
 8 {‘parentItemNo‘: ‘03.08.10.00002‘, ‘bomNo‘: ‘BOM201704030004‘, ‘childItemNo‘: ‘03.05.05.00001‘}
 9 {‘parentItemNo‘: ‘03.08.10.00002‘, ‘bomNo‘: ‘BOM201704030004‘, ‘childItemNo‘: ‘03.09.10.00001‘}
10 
11 Process finished with exit code 0

 

python groupby

原文:http://www.cnblogs.com/jonney-wang/p/7040534.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!