Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich zwei Wörterbücher in Python effizient zusammenführen?

Wie kann ich zwei Wörterbücher in Python effizient zusammenführen?

Barbara Streisand
Freigeben: 2024-12-22 17:24:11
Original
995 Leute haben es durchsucht

How Can I Efficiently Merge Two Dictionaries in Python?

Wie füge ich zwei Wörterbücher in einem einzigen Ausdruck in Python zusammen?

Problem:

Fügen Sie zwei Wörterbücher zu einem neuen Wörterbuch zusammen, wobei die Werte aus dem zweiten Wörterbuch diejenigen aus dem überschreiben zuerst.

Mögliche Lösungen:

In Python 3.9.0 oder höher:

z = x | y
Nach dem Login kopieren

In Python 3.5 oder Größer:

z = {**x, **y}
Nach dem Login kopieren

In Python 2, 3.4 oder niedriger:

def merge_two_dicts(x, y):
    z = x.copy()  # Start with keys and values of x
    z.update(y)  # Modifies z with keys and values of y
    return z

z = merge_two_dicts(x, y)
Nach dem Login kopieren

Erklärung:

1. Python 3.9.0 oder höher:

Der Pipe-Operator (|) wird in PEP-584 eingeführt und kombiniert beide Wörterbücher mithilfe der Wörterbuch-Entpacksyntax.

2. Python 3.5 oder höher:

Der doppelte Sternchenoperator (**) wird zum Entpacken des Wörterbuchs verwendet. Jedes Wörterbuch wird als Schlüssel-Wert-Paar entpackt und dann zu einem neuen Wörterbuch zusammengeführt.

3. Python 2, 3.4 oder niedriger:

In Python-Versionen vor 3.5 müssen Sie die Wörterbücher manuell mit den Methoden copy() und update() zusammenführen:

  • kopieren () erstellt eine flache Kopie des ursprünglichen Wörterbuchs.
  • update() aktualisiert das kopierte Wörterbuch mit den Schlüssel-Wert-Paaren aus dem zweiten Wörterbuch.

Hinweis:

Die Verwendung der Wörterbuch-Entpacksyntax ({x, y}) ist leistungsfähiger als die Verwendung des Diktats Verständnis ({k: v für d in (x, y) für k, v in d.items()}) oder die Funktion chain() von itertools.

Das obige ist der detaillierte Inhalt vonWie kann ich zwei Wörterbücher in Python effizient zusammenführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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