itertools
itertools提供groupby()函数,可以将输入按键值分成组,并返回一个迭代器,利用这个函数可以实现类似于SQL查询中的 groupby 功能。
参考
groupby()
使用groupby()函数前,需要先对输入进行排序,因为为了效率,groupby()只是简单的将相邻的具有相同键值的输入分到同一个组。
1 | from itertools import groupby |
输出是:1
2
3
4
5
6
7
8('a', '2019-01-12')
{'date': '2019-01-12', 'mem': 2048, 'user': 'a', 'cpu': 64}
('b', '2019-01-12')
{'date': '2019-01-12', 'mem': 1024, 'user': 'b', 'cpu': 32}
('b', '2019-01-13')
{'date': '2019-01-13', 'mem': 1024, 'user': 'b', 'cpu': 32}
('c', '2019-01-12')
{'date': '2019-01-12', 'mem': 1024, 'user': 'c', 'cpu': 32}