Python-通过索引将元组转换为多个列表的列表

Python-通过索引将元组转换为多个列表的列表,python,Python,我有一个元组列表,如下所示: x = [(1, 6), (2, 7), (3, 8), (4, 9), (5, 10)] 将每个列表分别具有特定索引的所有值的两个列表转换为一个列表的最简洁有效的方法是什么?像这样: y = [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]] 有没有可能在没有循环的情况下完成这项工作?这里没有循环(至少是非正式的) 你必须在元素上循环。在python或任何其他语言中都没有其他方法。这里没有循环(至少非正式地) 你必须在元素上循环。在pyth

我有一个元组列表,如下所示:

x = [(1, 6), (2, 7), (3, 8), (4, 9), (5, 10)]
将每个列表分别具有特定索引的所有值的两个列表转换为一个列表的最简洁有效的方法是什么?像这样:

y = [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]

有没有可能在没有循环的情况下完成这项工作?

这里没有循环(至少是非正式的)


你必须在元素上循环。在python或任何其他语言中都没有其他方法。

这里没有循环(至少非正式地)

你必须在元素上循环。在python或任何其他语言中都没有其他方法。

瞧,没有循环

>>> list(map(list, zip(*x)))
[[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]
听着,妈妈,没有环

>>> list(map(list, zip(*x)))
[[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]

对于纯python,我假设您只能通过列表理解(也就是循环)来实现这一点。将
numpy导入为np
只需执行
np.array(x)
(当然也会在内部循环,但希望是最快的方式)。numpy还使用纯python循环@spghttcdw,我假设您只能通过列表理解来实现这一点,也就是循环。将
numpy导入为np
你可以只做
np.array(x)
(当然也在内部循环,但希望是最快的方式。)numpy也在循环@SpghttCdI看到两个循环没有关系,它可以是O(你喜欢什么),但它的循环比OP要求的多(没有)我看到两个循环没有关系,它可以是O(你喜欢什么),但它的循环比OP要求的多(没有)@IljaEverilä是的,谢谢。我只是想回答,因为另一个答案很明显wrong@IljaEveril是的,谢谢。我只是想回答,因为另一个答案显然是错的