Python verbindet Wörterbücher

Python verbindet Wörterbücher
Ein Wörterbuch bezieht sich auf eine Sammlung ungeordneter Elemente in Schlüsselwertpaaren. Wörterbücher sind eine beliebte und vielseitige Datenstruktur, die dazu beitragen kann, zugehörige Daten zu speichern.

In Python sind Wörterbücher veränderlich. Dies bedeutet, dass wir die Werte eines Wörterbuchs nach der Deklaration ändern können.

In diesem Tutorial werden Ihnen verschiedene Möglichkeiten beigebracht, zwei Wörterbücher in einem zu verkettet.

Mit dem Rohroperator

In Python 3 und höher können Sie den Rohroperator (|) verwenden, um zwei Wörterbücher in 1 zu verkettet.

Ein Beispiel ist unten gezeigt:

relational = 'MySQL': 3306, 'postgreSQL': 5432, 'Oracle': 1521
other = 'redis': 6379, 'mongoDB': 27017
All = Relational | andere
drucken (alle)

Der obige Code sollte das zweite Wörterbuch an das erste in der Reihenfolge des Erscheinens anhängen.

Dies sollte zu einem neuen Wörterbuch wie gezeigt führen:

'MySQL': 3306, 'postgresql': 5432, 'oracle': 1521, 'redis': 6379, 'mongoDB': 27017

Verwenden einer für die Schleife

Wir können auch zwei Wörterbücher mit a anhängen Für Schleife. Es funktioniert, indem es über jeden Schlüssel und Wert eines Wörterbuchs iteriert und es dem anderen angehängt wird.

Ein Beispiel ist unten gezeigt:

relational = 'MySQL': 3306, 'postgreSQL': 5432, 'Oracle': 1521
other = 'redis': 6379, 'mongoDB': 27017
alle = relational.copy () # Kopieren Sie das Array
für k, v in anderen.Artikel():
alle [k] = v
drucken (alle)

Im obigen Beispiel beginnen wir damit, das erste Wörterbuch in das Wörterbuch zu kopieren, das wir anhängen möchten. Anschließend werden Sie jeden Schlüssel und Wert des zweiten Wörterbuchs mit der Methode () () (items () -Methode ab.

Schließlich fügen wir den Schlüssel und den Wert für das kopierte Wörterbuch hinzu.

Die resultierende Ausgabe ist wie gezeigt:

'MySQL': 3306, 'postgresql': 5432, 'oracle': 1521, 'redis': 6379, 'mongoDB': 27017

Verwenden des ** Operators

Mit dem ** Kwargs -Operator in Python können wir eine beliebige Anzahl von Argumenten an eine Funktion weitergeben. Daher können wir diesen Trick verwenden, um Wörterbücher in ein neues Diktat auszupacken.

Nachfolgend ist ein Beispiel dargestellt:

relational = 'MySQL': 3306, 'postgreSQL': 5432, 'Oracle': 1521
other = 'redis': 6379, 'mongoDB': 27017
All = ** Relational, ** Andere
drucken (alle)

Der obige Code sollte zurückgeben:

'MySQL': 3306, 'postgresql': 5432, 'oracle': 1521, 'redis': 6379, 'mongoDB': 27017

Verwenden der Aktualisierungsmethode

Wir können auch die update () -Methode in Python -Wörterbüchern verwenden, um zwei oder mehr Wörterbücher zusammenzuführen.

Eine Beispielnutzung wird unten angezeigt:

relational = 'MySQL': 3306, 'postgreSQL': 5432, 'Oracle': 1521
other = 'redis': 6379, 'mongoDB': 27017
alle = relational.Kopieren()
alle.Update (andere)
drucken (alle)

Im obigen Beispiel beginnen wir damit, das erste Wörterbuch zu kopieren. Dies hilft uns, das Überschreiben des ersten Wörterbuchs zu verhindern.

Unter Verwendung der ChainMap -Methode

Wir können auch die ChainMap -Methode aus dem Sammlungsmodul verwenden, um zwei Wörterbücher zusammenzuführen.

Die chainmap -Funktion ermöglicht es uns, zwei oder mehr Wörterbücher in eine einzelne aktualisierbare Ansicht.

Ein Beispiel ist wie gezeigt:

aus den Sammlungen import Chainmap
All = chainmap (relational, andere)
drucken (alle)

Die ChainMap sollte die Wörterbücher als Parameter einnehmen und ein fusioniertes Wörterbuch wie gezeigt zurückgeben:

Chainmap ('mysql': 3306, 'postgresql': 5432, 'oracle': 1521, 'redis': 6379, 'mongoDB': 27017)

Beachten Sie, dass der resultierende Typ kein nationales Python -Wörterbuch, sondern eine Klasse ist.Sammlungen.Kettenmap -Typ.

Abschluss

In diesem Artikel tauchten wir tief in verschiedene Methoden zur Zusammenführung von zwei oder mehr Wörterbüchern in Python ein.