我在python中有一个数组数组。在python中将它转换为数组的最佳方法是什么? 例如:
m = [[1,2],[3,4]]
# convert to [1,2,3,4]
我是python中的新手,所以我不知道它的任何解决方案比编写循环更好。请帮忙。
答案 0 :(得分:5)
使用itertools.chain
或list comprehension
:
from itertools import chain
list(chain(*m)) # shortest
# or:
list(chain.from_iterable(m)) # more efficient
对于较小的列表comprehension
更快,对于较长的列表chain.from_iterable
更合适。
[item for subl in m for item in subl]
为了理解嵌套理解,您可以将其拆分为多行,并将其与常规for循环进行比较:
[item #result = []
for subl in m #for subl in m:
for item in subl] # for item in subl:
# result.append(item)