リスト内包表記などを使用して、多くのリストを結合する巧妙な方法は何でしょうか
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [7,8,9]
>>> d = [x for x in a or b or c]
>>> d
[1, 2, 3]
これがなかなかうまくいかない…
リスト内包表記などを使用して、多くのリストを結合する巧妙な方法は何でしょうか
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [7,8,9]
>>> d = [x for x in a or b or c]
>>> d
[1, 2, 3]
これがなかなかうまくいかない…
>>> a + b + c
[1, 2, 3, 4, 5, 6, 7, 8, 9]
リスト内包表記の使用:
>>> [y for x in (a,b,c) for y in x]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> from itertools import chain
>>> list(chain(a,b,c))
[1, 2, 3, 4, 5, 6, 7, 8, 9]
別の解決策:
>>> sum([a,b,c],[])
[1, 2, 3, 4, 5, 6, 7, 8, 9]
どうですか:
d=a+b+c
リストを合計します。
または、これを行うことができます:
>>> d=[]
>>> for l in (a,b,c): d.extend(l)