Pythonで2つのリストを結合する方法
Python
で2つのリストを結合するには、さまざまな方法があります。最もシンプルな方法は+
演算子を使う方法ですが、メモリ効率を考慮した方法も存在します。
+
演算子を使ったリスト結合
最も簡単な方法は+
演算子を使う方法です。この方法では、2つのリストを結合して新しいリストを作成します。
list1 = [1, 2, 3]
list2 = [4, 5, 6]
combined = list1 + list2
print(combined) # [1, 2, 3, 4, 5, 6]
itertools.chain()
を使った効率的な結合
大量のデータを扱う場合、itertools.chain()
を使うと効率的です。chain()
はリストを結合せず、ジェネレータを返します。
import itertools
list1 = [1, 2, 3]
list2 = [4, 5, 6]
combined = itertools.chain(list1, list2)
for item in combined:
print(item) # 1 2 3 4 5 6
この方法では、新しいリストを作成する必要がないため、メモリの使用量を抑えることができます。
複数のリストを結合する
複数のリストを結合する場合、sum()
関数を使うこともできます。
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = [7, 8, 9]
combined = sum([list1, list2, list3], [])
print(combined) # [1, 2, 3, 4, 5, 6, 7, 8, 9]
ただし、大規模なデータの場合は、メモリ効率を考えてitertools.chain()
を使う方が良いでしょう。
まとめ
2つのリストを結合するには、+
演算子がシンプルで便利ですが、メモリ効率を考えるならitertools.chain()
の使用がおすすめです。また、複数のリストを効率よく扱う場合も、chain()
が有効です。