我有这个数据:
self.data = [(1, 1, 5.0),
(1, 2, 3.0),
(1, 3, 4.0),
(2, 1, 4.0),
(2, 2, 2.0)]
当我运行此代码时:
for mid, group in itertools.groupby(self.data, key=operator.itemgetter(0)):
因为list(group)
我得到:
[(1, 1, 5.0),
(1, 2, 3.0),
(1, 3, 4.0)]
这就是我想要的。
但是如果我使用 1 而不是 0
for mid, group in itertools.groupby(self.data, key=operator.itemgetter(1)):
按元组中的第二个数字分组,我只得到:
[(1, 1, 5.0)]
即使有其他元组在第 1(第 2)个位置有“1”。