Python でリストを別のリストに追加する

Rayven Esplanada 2023年10月10日
  1. Python で extend() メソッドを使用してリストを別のリストに追加する
  2. itertools モジュールの chain() 関数を使用して、Python のリストに追加する
  3. Python で連結+ 演算子を使用して複数のリストを追加する
Python でリストを別のリストに追加する

このチュートリアルでは、Python の既存のリストにリストを追加する方法を示します。

Python で extend() メソッドを使用してリストを別のリストに追加する

Python には、パラメーターとして iterable を受け入れ、それを現在の iterable の最後の位置に追加する extend() という名前のリスト用の組み込みメソッドがあります。リストに使用すると、メインリストの最後の要素の後にリストパラメータが追加されます。

たとえば、2つのリストを宣言し、メソッド extend() を使用して 2 番目のリストをメインリストに追加します。

lst = [4, 6, 8]
lst2 = [10, 12, 14]

lst.extend(lst2)
print(lst)

出力:

[4, 6, 8, 10, 12, 14]

extend() メソッドは、単純な関数呼び出しで既存のリストにリストを追加する簡単な方法を提供します。

itertools モジュールの chain() 関数を使用して、Python のリストに追加する

itertools は、反復可能オブジェクトの高速で効率的なユーティリティメソッドを含む Python モジュールです。このモジュールには、可変数の同じタイプの反復可能変数を受け入れ、パラメーターに基づいてそれらを順番に連結する関数 chain() があります。

chain() 関数を使用して、複数のリストを追加し、それらを 1つのリストに形成できます。

この例では、3つの異なるリストを宣言し、それらを itertools.chain() 関数のパラメーターとして設定します。次に、関数を別の関数 list() でラップします。この関数は、chain() 関数の戻り値から単一のリストを初期化します。

import itertools

lst = [9, 8, 7]
lst2 = [6, 5, 4]
lst3 = [3, 2, 1]

lst_all = list(itertools.chain(lst, lst2, lst3))

print(lst_all)

出力:

[9, 8, 7, 6, 5, 4, 3, 2, 1]

itertools.chain() を使用すると、パラメーターをいくつでも少なくすることができ、リストを連結して 1つのリストに形成する効率的な方法が提供されます。

Python で連結+ 演算子を使用して複数のリストを追加する

複数のリストを一緒に追加するもう 1つの簡単な方法は、Python でリストの連結をサポートする+ 演算子を使用することです。

既存のリスト変数に対して連結+ 操作を実行するだけで、出力は、コードに入力されたオペランドの順序で単一の結合リストになります。

lst = [1, 3, 5]
lst2 = [2, 4, 6]
lst3 = [0, 0, 0]

lst_all = lst + lst2 + lst3
print(lst_all)

出力:

[1, 3, 5, 2, 4, 6, 0, 0, 0]

要約すると、1つまたは複数のリストをメインリストに追加する 3つの簡単で効率的な方法は、拡張、チェーン、および連結+ 演算子の使用です。

3つのソリューションはすべて確実に機能し、時間に関するパフォーマンスの比較は比較的些細なことなので、個人的な好みと利便性の問題です。

Rayven Esplanada avatar Rayven Esplanada avatar

Skilled in Python, Java, Spring Boot, AngularJS, and Agile Methodologies. Strong engineering professional with a passion for development and always seeking opportunities for personal and career growth. A Technical Writer writing about comprehensive how-to articles, environment set-ups, and technical walkthroughs. Specializes in writing Python, Java, Spring, and SQL articles.

LinkedIn

関連記事 - Python List