Pythonでは、複数のリストやイテラブルなオブジェクトを同時に扱うための便利な関数としてzip
があります。この記事では、Pythonのzip
関数とfor
文を組み合わせた使い方について解説します。
zipとfor文の基本的な使い方
Pythonのzip
関数は、複数のイテラブルなオブジェクト(リストやタプルなど)をまとめて、それぞれの要素を同時に取り出すことができます。以下に基本的な使い方を示します。
data1 = [10, 20, 30, 40, 50]
data2 = ["A", "B", "C", "D", "E"]
for dt1, dt2 in zip(data1, data2):
print(f"dt1: {dt1}, dt2: {dt2}")
このコードを実行すると、data1
とdata2
の各要素が順に出力されます。
要素数が異なる場合の処理
zip
関数を使用する際、扱うリストの要素数が異なる場合があります。そのような場合、zip
関数はデフォルトで少ない要素数のリストに合わせて処理を行います。しかし、要素数が多いリストに合わせて処理を行いたい場合は、itertools
モジュールのzip_longest
関数を使用します。
import itertools
data1 = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
data2 = ["A", "B", "C", "D", "E"]
for dt1, dt2 in itertools.zip_longest(data1, data2):
print(f"dt1: {dt1}, dt2: {dt2}")
このコードを実行すると、data1
の要素数に合わせて処理が行われ、data2
の要素が足りない部分はNone
で補完されます。
以上がPythonのzip
関数とfor
文を組み合わせた使い方の基本です。これらを活用することで、複数のリストやイテラブルなオブジェクトを効率的に扱うことができます。.