循环中循环的python列表理解
转换的最佳方式:循环中循环的python列表理解,python,list-comprehension,Python,List Comprehension,转换的最佳方式: [(1, 2), (3, 4)] => [1, 2, 3, 4] 我试过了 [i for i in row for row in [(1, 2), (3, 4)]] 但这是行不通的。列表理解是最好的方法 >>> L = [(1, 2), (3, 4)] >>> [j for i in L for j in i] [1, 2, 3, 4] 注意,“外部循环”变量需要放在第一位,列表理解是最好的方法 >>> L =
[(1, 2), (3, 4)] => [1, 2, 3, 4]
我试过了
[i for i in row for row in [(1, 2), (3, 4)]]
但这是行不通的。列表理解是最好的方法
>>> L = [(1, 2), (3, 4)]
>>> [j for i in L for j in i]
[1, 2, 3, 4]
注意,“外部循环”变量需要放在第一位,列表理解是最好的方法
>>> L = [(1, 2), (3, 4)]
>>> [j for i in L for j in i]
[1, 2, 3, 4]
>>> [i for row in [(1, 2), (3, 4)] for i in row]
[1, 2, 3, 4]
>>>
请注意,“外部循环”变量需要放在第一位
>>> [i for row in [(1, 2), (3, 4)] for i in row]
[1, 2, 3, 4]
>>>
您也可以使用itertools中的链来完成此操作
from itertools import chain
a = [(1, 2), (3, 4)]
print(list(chain.from_iterable(a)))
>>>>[1, 2, 3, 4]
您也可以使用itertools中的链来完成此操作
from itertools import chain
a = [(1, 2), (3, 4)]
print(list(chain.from_iterable(a)))
>>>>[1, 2, 3, 4]
是的,这在某种程度上是一个非常复杂的问题。我就是找不到(我不知道如何表达这个问题)。谢谢你的提及。是的,这在某种程度上是一个非常复杂的问题。我就是找不到(我不知道如何表达这个问题)。谢谢你的提及。