Python で同じ長さの複数のリストをインターリーブする
Python では、同じ長さの複数のリストを結合する必要がある場合があります。単一のインターリーブリストに変換されます。たとえば、[1, 2, 3] と [10, 20, 30] という 2 つのリストがあり、それらを [1, 10, 2, 20, 3, 30] に変換するとします。
これを実現する簡単なアプローチの 1 つは、Python の zip() 関数を利用することです。この関数は、2 つの反復可能オブジェクトの対応する要素をタプルに結合します。 zip() をリストに適用し、結果のタプルをループすることで、インターリーブされたリストを効率的に構築できます。これは次のコードで表現できます:
[val for pair in zip(l1, l2) for val in pair]
ここで、l1 と l2 は入力リストを表します。
3 つ以上のリストが関係する場合、アスタリスクを使用して同じ概念を拡張できます。 (*) 演算子を zip() と組み合わせて、複数のリスト間のインターリーブを実現します。これは次のように表すことができます:
lists = [l1, l2, ...] [val for tup in zip(*lists) for val in tup]
これらの手法を利用すると、Python で同じ長さのリストを簡単にインターリーブでき、データ操作要件に対する簡潔で効率的なソリューションを提供できます。
以上がPythonで同じ長さの複数のリストをインターリーブする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。