Python の Zip リスト
Python では、タプル、辞書、リスト、セットなどの 2つ以上のイテレーター間のリンクを作成する必要がある場合がよくあります。Python でこのようなイテレータをペアリングすることは、Zipping として知られています。
このチュートリアルでは、Python で 2つのリストを一緒に圧縮する方法を示します。
Python で zip()
関数を使用して 2つのリストを圧縮する
Python には、zip()
と呼ばれる組み込み関数があります。zip()
関数は、引数として任意の iterable を取ることができます。これは、イテレータでもある zip
オブジェクトを返すために使用されます。
返されるイテレータは、リスト、ディクショナリ、またはセットのようなタプルとして返されます。このタプルでは、両方の反復可能オブジェクトの最初の要素がペアになっています。両方のイテラブルの 2 番目の要素がペアになり、以下同様に続きます。
次に例を示します。
first_list = [10, 20, 30, 40, 50]
second_list = [100, 200, 300, 400, 500]
zip_lists = zip(first_list, second_list)
Final_List = list(zip_lists)
print(Final_List)
出力:
[(10, 100), (20, 200), (30, 300), (40, 400), (50, 500)]
まず、2つの変数を使用して、2つのリストを連続して格納します。次に、zip()
関数を使用して両方のリストをペアにし、zip
オブジェクトを形成します。zip
オブジェクトを作成した後、list()
関数が zip
オブジェクトをリストに戻すことに注意してください。最後に、リストが出力されます。
Python で for
ループと zip()
関数を使用して 2つのリストを圧縮する
Python の for
ループは、リスト、辞書、タプルなどのシーケンスを反復処理するのに役立ちます。このメソッドを使用して、zip()
関数を一緒に使用することにより、2つのリストを一緒に圧縮することもできます。以下のサンプルコードを確認してください。
multiplications = ["TEN TIMES TEN", "TEN TIMES TWENTY", ..., "TEN TIMES FIFTY"]
multiples = [100, 200, ..., 500]
for multiplications, multiples in zip(multiplications, multiples):
print("{}: {}".format(multiplications, multiples))
出力:
TEN TIMES TEN: 100
TEN TIMES TWENTY: 200
Ellipsis: Ellipsis
TEN TIMES FIFTY: 500
ここで、...
は Ellipsis
のオブジェクトです—これは明らかな発生インスタンスを表します。また、このメソッドでは format()
関数が使用されていることに注意してください。これは、複雑な変数の置換と値の配置を処理するのに役立つ方法です。{}
はシングルフォーマッタと呼ばれ、その代わりに配置される値である置換要素の代わりに使用されます。
Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.
LinkedIn