Heim > Artikel > Backend-Entwicklung > Wie verschachtelt man mehrere Listen gleicher Länge in Python?
Verschachtelung mehrerer Listen gleicher Länge in Python: Ein pythonischer Ansatz
In Python stellt sich häufig die Aufgabe, mehrere Listen gleicher Länge zu verschachteln. Bei diesem Vorgang werden die Elemente aus den Eingabelisten abgewechselt, um eine neue Liste zu erstellen.
Problemstellung:
Gegebenenfalls zwei oder mehr Listen gleicher Länge, finden Sie einen pythonischen Weg um ihre Elemente in einer einzigen Liste zu verschachteln und dabei die ursprüngliche Elementreihenfolge beizubehalten.
Lösung:
Mit der leistungsstarken zip()-Funktion und dem Listenverständnis können wir Folgendes erreichen gewünschte Verschachtelung auf prägnante und elegante Weise.
Für zwei Listen, l1 und l2, demonstriert das folgende Codefragment den Verschachtelungsprozess:
[val for pair in zip(l1, l2) for val in pair]
Dieser Code verwendet die Funktion zip(), um Erstellen Sie Paare entsprechender Elemente aus l1 und l2. Dann iteriert es über jedes Paar und entpackt seine Elemente (val) in das Listenverständnis.
Beispiel:
l1 = [1, 2, 3] l2 = [10, 20, 30] interleaved_list = [val for pair in zip(l1, l2) for val in pair] print(interleaved_list) # [1, 10, 2, 20, 3, 30]
Verallgemeinerung für N Listen:
Die gleiche Technik kann verallgemeinert werden, um eine beliebige Anzahl von Listen zu verschachteln:
lists = [l1, l2, ..., ln] [val for tup in zip(*lists) for val in tup]
Dieser Code verwendet den *-Operator, um die Listen in separate Argumente für zip() zu entpacken. Erstellen von Tupeln entsprechender Elemente aus allen Eingabelisten. Das Listenverständnis iteriert über jedes Tupel und extrahiert seine Elemente, um die verschachtelte Liste zu erstellen.
Das obige ist der detaillierte Inhalt vonWie verschachtelt man mehrere Listen gleicher Länge in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!