3 einfache Möglichkeiten, Python-Wörterbücher zusammenzuführen
Erfahren Sie, wie Sie Python-Wörterbücher mithilfe integrierter Methoden, Entpacken und des Union-Operators effizient zusammenführen.
Wenn Sie mit Wörterbüchern in Python arbeiten, müssen Sie diese manchmal zur weiteren Verarbeitung in einem einzigen Wörterbuch zusammenführen.
In diesem Tutorial gehen wir drei gängige Methoden zum Zusammenführen von Python-Wörterbüchern durch. Konkret konzentrieren wir uns auf das Zusammenführen von Wörterbüchern mithilfe von:
- Die Methode
update()
- Wörterbuch auspacken
- Der Gewerkschaftsbetreiber
Fangen wir an.
Hinweis: Sie finden die Codebeispiele auf GitHub.
1. Verwenden der update()-Methode
Um zwei Wörterbücher zusammenzuführen, können Sie die Wörterbuchmethode update()
verwenden. Sie können die Methode update()
verwenden, um ein vorhandenes Wörterbuch mit Schlüssel-Wert-Paaren aus einem anderen Wörterbuch wie folgt zu aktualisieren:
dict1.update(dict2)
Hier :
dict1
: Das ursprüngliche Wörterbuch, das aktualisiert werden soll.dict2
: Das Wörterbuch, dessen Schlüssel-Wert-Paare zudict1
hinzugefügt werden.
Hinweis: Diese Methode ändert direkt das ursprüngliche Wörterbuch. Wenn Sie das nicht möchten, können Sie eine Kopie des Originalwörterbuchs erstellen und die Kopie aktualisieren.
Nehmen wir an, wir haben zwei Konfigurationswörterbücher, config1
und config2
, die Konfigurationsinformationen für die Verbindung zu einer Datenbank enthalten:
config1 = {
'database': 'Postgres',
'host': 'localhost',
'port': 5432
}
config2 = {
'username': 'admin',
'password': 'secret',
'timeout': 30
}
Lassen Sie uns nun eine Kopie von config1
mit config2
zusammenführen:
# Merge using update() method
final_config = config1.copy() # Create a copy to avoid modifying the original config1
final_config.update(config2)
print(final_config)
Wie zu sehen ist, fügt die Methode update()
alle Schlüssel-Wert-Paare von config2
zu final_config
hinzu, was zu einem kombinierten Wörterbuch mit allen Konfigurationsinformationen führt .
Output >>>
{
'database': 'Postgres',
'host': 'localhost',
'port': 5432,
'username': 'admin',
'password': 'secret',
'timeout': 30
}
2. Wörterbuch-Entpackung verwenden: {**dict1, **dict2}
Genauso wie Sie Tupel entpacken, können Sie auch Wörterbücher mit ** entpacken. Dadurch wird ein neues Wörterbuch erstellt, indem die Schlüssel-Wert-Paare aus beiden Wörterbüchern entpackt werden.
Angenommen, Sie haben die Wörterbücher dict1
und dict2
. Sie können die Schlüssel-Wert-Paare entpacken und wie folgt in einem neuen Wörterbuch zusammenführen:
merged_dict = {**dict1, **dict2}
Lassen Sie uns die Konfigurationswörterbücher wie gezeigt zusammenführen:
config1 = {
'database': 'Postgres',
'host': 'localhost',
'port': 5432
}
config2 = {
'username': 'admin',
'password': 'secret',
'timeout': 30
}
# Merge using dictionary unpacking
final_config = {**config1, **config2}
print(final_config)
Die Wörterbuch-Entpackmethode {**config1, **config2
erstellt ein neues Wörterbuch final_config
, das alle Schlüssel-Wert-Paare aus beiden config1
enthält und config2
.
Output >>>
{
'database': 'Postgres',
'host': 'localhost',
'port': 5432,
'username': 'admin',
'password': 'secret',
'timeout': 30
}
3. Verwendung der Union | Operator
Der in Python 3.9 eingeführte Union-Operator ist eine weitere übersichtliche Möglichkeit, zwei Wörterbücher zusammenzuführen.
Sie können den Union-Operator wie folgt verwenden:
merged_dict = dict1 | dict2
Verwenden von dict1 | dict2
führt dict1
und dict2
zu einem neuen Wörterbuch zusammen.
config1 = {
'database': 'Postgres',
'host': 'localhost',
'port': 5432
}
config2 = {
'username': 'admin',
'password': 'secret',
'timeout': 30
}
# Merge using | operator
final_config = config1 | config2
print(final_config)
Der |-Operator führt config1
und config2
in einem neuen Wörterbuch final_config
zusammen:
Output >>>
{
'database': 'Postgres',
'host': 'localhost',
'port': 5432,
'username': 'admin',
'password': 'secret',
'timeout': 30
}
Zusammenfassung
Sehen wir uns die verschiedenen Methoden zum Zusammenführen von Python-Wörterbüchern an:
- Die Methode
update()
–dict1.update(dict2)
– aktualisiert ein vorhandenes Wörterbuch. {**dict1, **dict2}
erstellt durch Entpacken ein neues zusammengeführtes Wörterbuch.- Die Gewerkschaft | Operator in Python 3.9+ führt Wörterbücher mit der einfachen Syntax
dict1 | zusammen dict2
.
Dies ist keine erschöpfende Liste, die alle Methoden zum Zusammenführen von Wörterbüchern abdeckt. Es gibt andere Methoden wie Listenverständnisse, das Erstellen einer zusammengeführten Ansicht von Wörterbüchern mithilfe von „collections.ChainMap“ und mehr. Dies sind jedoch die gebräuchlichsten Methoden zum Zusammenführen von Wörterbüchern.
Viel Spaß beim Codieren!
Bala Priya C ist eine Entwicklerin und technische Redakteurin aus Indien. Sie arbeitet gerne an der Schnittstelle von Mathematik, Programmierung, Datenwissenschaft und Inhaltserstellung. Zu ihren Interessen- und Fachgebieten gehören DevOps, Datenwissenschaft und Verarbeitung natürlicher Sprache. Sie liebt es zu lesen, zu schreiben, zu programmieren und Kaffee zu trinken! Derzeit arbeitet sie daran, zu lernen und ihr Wissen mit der Entwickler-Community zu teilen, indem sie Tutorials, Anleitungen, Meinungsbeiträge und mehr verfasst. Bala erstellt außerdem ansprechende Ressourcenübersichten und Programmier-Tutorials.