Heim  >  Artikel  >  Backend-Entwicklung  >  Wie komprimiere ich Listen unterschiedlicher Größe in Python mithilfe der Iterationswiederholung?

Wie komprimiere ich Listen unterschiedlicher Größe in Python mithilfe der Iterationswiederholung?

Barbara Streisand
Barbara StreisandOriginal
2024-10-28 09:27:02984Durchsuche

How to Zip Differently Sized Lists in Python Using Iteration Repetition?

Zippen unterschiedlich großer Listen mit Iterationswiederholung

Wenn Sie mit Listen unterschiedlicher Länge arbeiten, kann das Zusammenpacken dieser Listen eine Herausforderung darstellen. Die Standardfunktion zip() in Python paart Elemente aus der kürzeren Liste mit denen aus der längeren Liste, wobei die übrigen Elemente aus der längeren Liste ungepaart bleiben. Um diese Einschränkung zu beheben, können wir die Leistungsfähigkeit der Iterationswiederholung nutzen.

Verwendung von itertools.cycle für nahtlose Wiederholung

Eine effektive Möglichkeit, die kürzere Liste zu wiederholen, ist die Verwendung der Funktion itertools.cycle. Diese Funktion erstellt einen Iterator, der die Elemente eines Iterables auch nach Erschöpfung endlos durchläuft. Indem wir den Zyklus in unseren Komprimierungsvorgang integrieren, können wir sicherstellen, dass sich die kürzere Liste wiederholt, bis die längere Liste vollständig abgedeckt ist.

Code-Implementierung

Die Verwendung von itertools.cycle zum Komprimieren unterschiedlich großer Listen ist unkompliziert . Der folgende Codeausschnitt demonstriert seine Implementierung:

<code class="python">import itertools

A = [1, 2, 3, 4, 5, 6, 7, 8, 9]
B = ["A", "B", "C"]

from itertools import cycle
zip_list = zip(A, cycle(B)) if len(A) > len(B) else zip(cycle(A), B)

for item in zip_list:
    print(item)</code>

Ausgabeaufschlüsselung

Die Ausführung des bereitgestellten Codes erzeugt die folgende Ausgabe:

(1, 'A')
(2, 'B')
(3, 'C')
(4, 'A')
(5, 'B')
(6, 'C')
(7, 'A')
(8, 'B')
(9, 'C')

Wie wir beobachten können, je kürzer Liste B wiederholt sich, bis alle Elemente aus der längeren Liste A gepaart sind. Diese nahtlose Wiederholung stellt sicher, dass keine Elemente ungepaart bleiben, sodass wir Vorgänge für ganze Listen ohne Datenverlust ausführen können.

Das obige ist der detaillierte Inhalt vonWie komprimiere ich Listen unterschiedlicher Größe in Python mithilfe der Iterationswiederholung?. 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