Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich zwei Listen ungleicher Länge pythonisch verschachteln?

Wie kann ich zwei Listen ungleicher Länge pythonisch verschachteln?

Barbara Streisand
Freigeben: 2024-12-12 16:41:16
Original
891 Leute haben es durchsucht

How Can I Pythonically Interleave Two Lists of Unequal Lengths?

Pythonische Verschachtelung von Listen

Das abwechselnde Kombinieren zweier Listen ist eine häufige Aufgabe in der Programmierung. Wenn die erste Liste genau ein Element mehr enthält als die zweite, gibt es in Python mehrere Ansätze, dies zu erreichen. Hier sind ein paar Pythonic-Optionen:

1. Verwenden von Slicing:

Eine Methode besteht darin, Slicing zu verwenden, um eine neue Liste zu erstellen, die die Elemente aus beiden Listen verschachtelt. Dies kann mit den folgenden Schritten erfolgen:

  1. Erstellen Sie eine neue Liste mit einer Länge, die der Summe der Längen der beiden Eingabelisten entspricht.
  2. Weisen Sie die gerade indizierten Elemente zu der neuen Liste den Elementen aus der ersten Eingabeliste zu.
  3. Weisen Sie die ungeradzahlig indizierten Elemente der neuen Liste den Elementen aus der zweiten Eingabeliste zu Liste.

Hier ist ein Beispiel:

list1 = ['f', 'o', 'o']
list2 = ['hello', 'world']
result = [None]*(len(list1)+len(list2))
result[::2] = list1
result[1::2] = list2
print(result)
Nach dem Login kopieren

Ausgabe:

['f', 'hello', 'o', 'world', 'o']
Nach dem Login kopieren
Nach dem Login kopieren

2. Verwendung des itertools-Pakets:

Pythons itertools-Paket bietet eine praktische Funktion namens islice, die zum Durchlaufen von Elementen einer Liste in einem bestimmten Intervall verwendet werden kann. So können Sie damit zwei Listen verschachteln:

import itertools
list1 = ['f', 'o', 'o']
list2 = ['hello', 'world']
result = list(itertools.chain(*itertools.zip_longest(list1, list2)))
print(result)
Nach dem Login kopieren

Ausgabe:

['f', 'hello', 'o', 'world', 'o']
Nach dem Login kopieren
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich zwei Listen ungleicher Länge pythonisch verschachteln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage