私はPythonで配列の配列を持っています。Pythonで配列に変換する最良の方法は何ですか? 例えば:
m = [[1,2],[3,4]]
# convert to [1,2,3,4]
私はPythonが初めてなので、ループを書くよりも良い解決策を知りません。助けてください。
私はPythonで配列の配列を持っています。Pythonで配列に変換する最良の方法は何ですか? 例えば:
m = [[1,2],[3,4]]
# convert to [1,2,3,4]
私はPythonが初めてなので、ループを書くよりも良い解決策を知りません。助けてください。
使用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)