リストを扱う場合、多くの場合、その要素をペアで反復する必要があります。これを実現するために、従来の方法では、各要素を手動で反復処理して次の要素にアクセスする必要があります。
for i in range(len(l) - 1): x = l[i] y = l[i + 1]
ただし、Python では、組み込みイテレータを利用して、これを実現するためのより便利な方法が提供されています。
zip 関数は、対応する要素をタプルにペアにして複数の反復可能オブジェクトを結合します。リストの場合、zip は隣接する要素のタプルを作成します。例:
l = [1, 7, 3, 5] for first, second in zip(l, l[1:]): print(first, second) Output: 1 7 7 3 3 5
Zip は、コンパクトな方法で連続する要素へのアクセスを提供しながら、反復回数を効果的に削減します。
メモリ消費が懸念される Python 2 の長いリストの場合は、itertools モジュールの izip 関数を使用できます。 zip とは異なり、izip は新しいリストを作成せずにペアを効率的に生成します。
import itertools for first, second in itertools.izip(l, l[1:]): ...
これらのメソッドは、リスト内の連続するペアを反復するための簡潔で効率的な方法を提供し、コードの柔軟性と可読性を高めます。
以上がPython リスト内の連続するペアを反復処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。