操作元组列表

时间:2015-12-24 12:57:46

标签: python generator

我有一个双元素元组列表:(object, timestamp)

我想创建一个返回列表的生成器,其中每个列表包含共享相同时间戳的元组。

另一个要求是生成器返回的第一个列表是最早的时间戳列表。

为方便起见,我们假设时间戳是自然数:1, 2, 3, ...

是否有任何内置的Python工具或者解决方案是天真的实现?

1 个答案:

答案 0 :(得分:2)

您可以在operatoritertools

的帮助下完成此操作
from operator import itemgetter
from itertools import groupby   

def grouped(mytuples):
    for timestamp, items in groupby(sorted(mytuples, key=itemgetter(1)),
                                    key=itemgetter(1)):
        yield timestamp, list(items)