gpt4 book ai didi

python - 如何在 Python 中合并任意数量的元组?

转载 作者:太空狗 更新时间:2023-10-29 21:12:43 27 4
gpt4 key购买 nike

我有一个元组列表:

l=[(1,2,3),(4,5,6)]

列表可以是任意长度,元组也是如此。我想将其转换为元素的列表或元组,按照它们出现的顺序:

f=[1,2,3,4,5,6] # or (1,2,3,4,5,6)

如果我在开发时知道我会返回多少元组,我可以直接添加它们:

m = l[0] + l[1]  # (1,2,3,4,5,6)

但是因为直到运行时我才知道我将拥有多少元组,所以我不能那样做。我觉得有一种方法可以使用 map 来做到这一点,但我想不出来。我可以遍历元组并将它们添加到累加器,但这会创建许多永远不会被使用的中间元组。我还可以遍历元组,然后遍历元组的元素,并将它们附加到列表中。这看起来效率很低。也许有一种更简单的方法我完全忽略了。有什么想法吗?

最佳答案

Chain它们(只创建一个生成器而不是保留额外的内存):

>>> from itertools import chain
>>> l = [(1,2,3),(4,5,6)]
>>> list(chain.from_iterable(l))
[1, 2, 3, 4, 5, 6]

关于python - 如何在 Python 中合并任意数量的元组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9401209/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com