首页 > 其他 > 详细

itertools.groupby方法进行分组

时间:2021-06-09 12:45:33      阅读:16      评论:0      收藏:0      [点我收藏+]

 

  • 分组前先排序
import itertools
a = [
    {"a": 1, "b": 2},
    {"a": 2, "b": 4},
    {"a": 1, "b": 8},
    {"a": 3, "b": 5},
    {"a": 1, "b": 1},
]
a.sort(key=lambda _: _.get("a"))
print(a)
gb = itertools.groupby(a, lambda i: i.get("a"))
for i in gb:
    print(i)    # 元组
    for v in i[1]:
        print(v)

执行结果:

[{a: 1, b: 2}, {a: 1, b: 8}, {a: 1, b: 1}, {a: 2, b: 4}, {a: 3, b: 5}]
(1, <itertools._grouper object at 0x000001F3184EB250>)
{a: 1, b: 2}
{a: 1, b: 8}
{a: 1, b: 1}
(2, <itertools._grouper object at 0x000001F3184EB220>)
{a: 2, b: 4}
(3, <itertools._grouper object at 0x000001F3184EB250>)
{a: 3, b: 5}

 

itertools.groupby方法进行分组

原文:https://www.cnblogs.com/liuxuelin/p/14865581.html

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