Pythonで複数のリストを連結する方法

スポンサーリンク

今回は、Pythonで複数のリストを連結するための様々なテクニックを理解します。

Pythonのリストは、データを保存し、それに対して操作を実行する方法を提供してくれます。

スポンサーリンク

Pythonで複数のリストを連結するテクニック

以下のいずれかのテクニックを使って、2つ以上のリストを完全に連結することができます

  • itertools モジュールを使用する
  • Python の ‘+’ 演算子を使用します。
  • Python ‘*’ 演算子を使用する場合。

1. Python itertools.chain() メソッドの使い方

Python の itertools モジュールは、複数のリストを連結する itertools.chain() メソッドを提供します。

itertools.chain()` メソッドは、リスト、文字列、タプルなどの異なる反復記号のデータを受け取り、それらの要素の線形列を提供します。

この関数は、入力データのデータ型に関係なく動作します。

構文は以下の様な感じです。

itertools.chain(list1, list2, ...., listN)

例えば、以下の様になります。

import itertools
 
 
x = [10, 30, 50, 70]
y = [12, 16, 17, 18]
z = [52, 43, 65, 98]
 
 
opt = list(itertools.chain(x,y,z))
 
 
print ("Concatenated list:
"
,str(opt))

結果は以下の通りです。

Concatenated list:
 [10, 30, 50, 70, 12, 16, 17, 18, 52, 43, 65, 98]

2. Python ‘*’ 演算子の使用

Python の `’*’ 演算子は、入力リストに対して操作を実行し、それらを連結するための非常に効率的な方法を提供します。

この演算子は、指定されたインデックス位置のデータ要素を表し、ラップを解除します。

構文は以下の通りです。

[*input_list1, *input_list2, ...., *inout_listN]

前述のように、”index “にあるリスト内の要素を “index “の順番で格納します。

例えば、以下の様になります。

x = [10, 30, 50, 70]
y = [12, 16, 17, 18]
z = [52, 43, 65, 98]
 
opt = [*x, *y, *z]
 
 
print ("Concatenated list:
"
,str(opt))

出力されます。

Concatenated list:
 [10, 30, 50, 70, 12, 16, 17, 18, 52, 43, 65, 98]

3. Python “+” 演算子の使用

Python の '+' 演算子 を使うと、リストを連結することができます

構文は以下の通りです。

list1 + list2 + .... + listN

例えば、以下の様になります。

x = [10, 30, 50, 70]
y = [12, 16, 17, 18]
z = [52, 43, 65, 98]
 
 
opt = x+y+z
 
print ("Concatenated list:
"
,str(opt))

結果は以下の通りです。

Concatenated list:
 [10, 30, 50, 70, 12, 16, 17, 18, 52, 43, 65, 98]

まとめ

今回は、Pythonで複数のリストを連結するさまざまな方法を紹介しました。

タイトルとURLをコピーしました