Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann ich benachbarte Paare in einer Python-Liste durchlaufen?

Wie kann ich benachbarte Paare in einer Python-Liste durchlaufen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-21 04:28:10809Durchsuche

How Can I Iterate Through Adjacent Pairs in a Python List?

Iterieren durch benachbarte Paare in einer Python-Liste

Viele Programmierprobleme können durch Iterieren über benachbarte Elementpaare in einer Sequenz gelöst werden. Beispielsweise müssen Sie möglicherweise aufeinanderfolgende Elemente vergleichen, zusammenfassen oder eine andere Operation an benachbarten Werten durchführen.

Betrachten Sie die folgende Liste von Zahlen:

a = [5, 7, 11, 4, 5]

Sie möchten iterieren über diese Liste, sodass Sie als Paar auf aufeinanderfolgende Elemente zugreifen können. Python bietet keine integrierte Möglichkeit, dies zu tun, aber es kann mit der Zip-Funktion erreicht werden:

for previous, current in zip(a, a[1:]):
    print(previous, current)

Die Zip-Funktion akzeptiert mehrere Iterables (z. B. Listen oder Tupel) und gibt eine neue zurück iterierbar, das Tupel entsprechender Elemente aus jedem Eingabe-Iterable enthält. In diesem Fall komprimieren wir die ursprüngliche Liste a mit einer Kopie von sich selbst, beginnend mit dem zweiten Element (a[1:]). Dadurch erhalten wir Paare aufeinanderfolgender Elemente aus der ursprünglichen Liste.

Die Ausgabe des obigen Codes lautet:

5 7
7 11
11 4
4 5

Beachten Sie, dass diese Technik auch dann funktioniert, wenn die Liste leer ist oder nur leer ist ein Element. In solchen Fällen gibt zip eine leere Iterable zurück und der Code in der for-Schleife wird niemals ausgeführt.

Das obige ist der detaillierte Inhalt vonWie kann ich benachbarte Paare in einer Python-Liste durchlaufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn