Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 操纵元组列表_Python_Generator - Fatal编程技术网

Python 操纵元组列表

Python 操纵元组列表,python,generator,Python,Generator,我有两个元素元组的列表:(对象,时间戳) 我想制作一个生成器,返回列表,其中每个列表包含共享相同时间戳的元组 另一个要求是生成器返回的第一个列表是最早时间戳的列表 为了方便起见,我们假设时间戳是自然数:1、2、3、 有没有Python内置的工具来做这类事情,或者解决方案是简单的实现?您可以在操作符和itertools的帮助下完成这项工作: from operator import itemgetter from itertools import groupby def grouped(m

我有两个元素元组的列表:
(对象,时间戳)

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

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

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


有没有Python内置的工具来做这类事情,或者解决方案是简单的实现?

您可以在
操作符和
itertools的帮助下完成这项工作:

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)

排序和使用
itertools.groupby()
有什么问题?Igancio所说的以及
排序或排序的
函数可以满足您的要求。@IgnacioVazquez Abrams也谢谢您:)