Heim >Backend-Entwicklung >Python-Tutorial >Warum führt das Komprimieren von drei Listen mit 20 Elementen in Python zu einer Liste mit 20 Elementen?

Warum führt das Komprimieren von drei Listen mit 20 Elementen in Python zu einer Liste mit 20 Elementen?

Susan Sarandon
Susan SarandonOriginal
2024-12-09 20:05:10887Durchsuche

Why Does Zipping Three 20-Element Lists in Python Result in a 20-Element List?

Listen in Python komprimieren

In Python kombiniert die Funktion „zip()“ mehrere Listen zu einer einzigen Liste von Tupeln. Jedes Tupel enthält Elemente von entsprechenden Positionen in den Eingabelisten.

Frage:

Ein Benutzer ist beim Komprimieren von drei Listen der Größe jeweils 20 auf ein unerwartetes Ergebnis gestoßen. Entgegen ihrer Erwartung von drei Elementen hatte die komprimierte Liste 20 Elemente.

Antwort:

Beim Komprimieren mehrerer Listen enthält die resultierende Liste so viele Elemente wie die kürzeste Eingabeliste. In diesem Fall haben alle drei Eingabelisten 20 Elemente, sodass die komprimierte Liste auch 20 Elemente enthält. Allerdings ist jedes Element ein Drei-Tupel, das Elemente von entsprechenden Positionen in den drei Eingabelisten enthält.

Beispiel:

a = b = c = range(20)
result = zip(a, b, c)

print(len(result))  # 20
print(len(result[0]))  # 3

Schlussfolgerung:

Durch das Komprimieren von Listen wird eine neue Liste erstellt, in der jedes Element ein Tupel von Elementen aus den entsprechenden Positionen in den Eingabelisten ist. Die Länge der komprimierten Liste entspricht der kürzesten Eingabeliste, während die Länge jedes Tupels der Anzahl der Eingabelisten entspricht.

Das obige ist der detaillierte Inhalt vonWarum führt das Komprimieren von drei Listen mit 20 Elementen in Python zu einer Liste mit 20 Elementen?. 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