Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich eine flache Liste von Schlüssel-Wert-Paaren effizient in ein Wörterbuch in Python konvertieren?

Wie kann ich eine flache Liste von Schlüssel-Wert-Paaren effizient in ein Wörterbuch in Python konvertieren?

Linda Hamilton
Freigeben: 2024-12-04 18:37:15
Original
523 Leute haben es durchsucht

How Can I Efficiently Convert a Flat List of Key-Value Pairs into a Dictionary in Python?

Konvertieren einer flachen Liste in ein Wörterbuch

In Python kann die Konvertierung einer Liste von Schlüssel-Wert-Paaren in ein Wörterbuch auf mehrere Arten erreicht werden Wege. Der einfachste Ansatz ist die Verwendung der Funktion dict(). Wenn beispielsweise die Liste a = ['hello', 'world', '1', '2'] gegeben ist, können wir das Wörterbuch b mit der folgenden Syntax erstellen:

b = dict(zip(a[::2], a[1::2]))
Nach dem Login kopieren

Diese Codezeile verwendet die Funktion zip(), um eine Liste von Tupeln zu erstellen, wobei jedes Tupel einen Schlüssel und den entsprechenden Wert enthält. Die Funktion dict() wandelt dann diese Liste von Tupeln in ein Wörterbuch um.

Eine andere Methode zum Konvertieren der Liste in ein Wörterbuch ist die Verwendung eines Wörterbuchverständnisses. Dieser Ansatz ist prägnanter und einfacher zu lesen, insbesondere für größere Listen:

b = {a[i]: a[i+1] for i in range(0, len(a), 2)}
Nach dem Login kopieren

Dieses Verständnis iteriert paarweise über die Liste a und weist das erste Element dem Schlüssel und das zweite Element dem Wert zu.

Wenn die Liste sehr umfangreich ist, möchten Sie möglicherweise die Erstellung von Zwischenlisten vermeiden. In solchen Fällen können Sie die Funktion itertools.izip() verwenden, um die Liste langsam zu durchlaufen, ohne eine temporäre Liste zu erstellen. Die Syntax für diesen Ansatz lautet:

from itertools import izip
i = iter(a)
b = dict(izip(i, i))
Nach dem Login kopieren

In Python 3 ist die zip()-Funktion bereits faul, sodass Sie izip() nicht verwenden müssen. Sie können auch den „Walross“-Operator (:=) verwenden, um dies in eine Zeile zu schreiben:

b = dict(zip(i := iter(a), i))
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich eine flache Liste von Schlüssel-Wert-Paaren effizient in ein Wörterbuch in Python konvertieren?. 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