Python-Wörterbücher: Struktur und Hash-Maps
Meister-Python-Wörterbücher. Erfahren Sie, wie Sie Schlüssel-Wert-Paardaten speichern, abrufen und verarbeiten. Verstehen Sie die Leistung und Best Practices für Zuordnungen.
Übersicht
Wörterbücher sind wohl die wichtigste und optimierteste Datenstruktur in Python. Ein Wörterbuch ist eine veränderbare Sammlung von Datenwerten, die in „Schlüssel:Wert“-Paaren gespeichert sind. Wenn Sie sich ein reales Wörterbuch vorstellen, ist der „Schlüssel“ das Wort, nach dem Sie suchen, und der „Wert“ ist die Definition. Diese Paarungsstruktur macht es unglaublich effizient, relationale Daten abzurufen, zu aktualisieren und zu verwalten.
Unter der Haube werden Python-Wörterbücher als hochoptimierte Hash-Tabellen (oder Hash-Maps) implementiert. Dies impliziert, dass das Abrufen eines Werts über seinen Schlüssel eine „O(1)“-Operation mit konstanter Zeit ist. Unabhängig davon, ob Ihr Wörterbuch zehn Elemente oder zehn Millionen Elemente enthält, kann Python sofort direkt zur Speicheradresse des Werts springen, ohne die gesamte Sammlung durchsuchen zu müssen.
Um ein Wörterbuch zu definieren, verwenden Sie geschweifte Klammern „{}“ mit Schlüsseln und Werten, die durch Doppelpunkte „:“ getrennt sind. Schlüssel müssen unveränderliche Typen sein (wie Zeichenfolgen, Ganzzahlen oder Tupel), was bedeutet, dass Sie eine Liste nicht als Wörterbuchschlüssel verwenden können. Werte können jedoch absolut alles sein – einschließlich Listen, Objekte oder sogar tief verschachtelte Wörterbücher, was sie perfekt für die Darstellung von JSON-ähnlichen Datenstrukturen macht.
Der Zugriff auf Werte erfolgt mithilfe der Klammernotation (z. B. „Benutzer[„Name“]“). Wenn der Schlüssel jedoch nicht vorhanden ist, löst dieser Ansatz einen „KeyError“ aus und stoppt die Programmausführung sofort. Um sichereren Code zu schreiben, verwenden Profis die Methode „.get()“ (z. B. „user.get(“name“)“, die bei fehlendem Schlüssel problemlos „None“ oder einen benutzerdefinierten Standardwert zurückgibt und so unnötige Abstürze verhindert.
Historisch gesehen waren Python-Wörterbücher völlig ungeordnet. AbPython 3.7 wird jedoch offiziell garantiert, dass Wörterbücher die Einfügereihenfolge beibehalten. Das bedeutet, dass beim Durchlaufen eines Wörterbuchs mit Methoden wie „.keys()“, „.values()“ oder „.items()“ die Elemente in der exakten Reihenfolge zurückgegeben werden, in der sie ursprünglich zum Wörterbuch hinzugefügt wurden, wodurch die Geschwindigkeit von Hash-Maps mit der Vorhersagbarkeit von Listen kombiniert wird.
Code- und Ausführungsausgabe
Erstellen eines Benutzerkonfigurationsprofils unter starker Nutzung verschachtelter Schlüssel-Wert-Paare.
user = {
"username": "coder123",
"role": "admin",
"active": True
}
user["last_login"] = "2026-04-10" # Adding a key
print(f"Username is {user['username']}")
# Iterating over key-value pairs
for key, value in user.items():
print(f"{key}: {value}")Username is coder123
username: coder123
role: admin
active: True
last_login: 2026-04-10Schrittweise Umsetzung
- Verarbeiten von JSON-Antworten von REST-APIs
- Zuordnung eindeutiger IDs zu großen Datenobjekten
- Speichern von Anwendungskonfigurationsparametern
Häufig gestellte Fragen
Was passiert, wenn ich versuche, auf einen Schlüssel zuzugreifen, der nicht existiert?
Die Verwendung der Klammernotation (user["name"]) löst einen KeyError aus. Verwenden Sie user.get("name"), um stattdessen None ohne Auslösen zurückzugeben.
Verwandte Themen
Erfahren Sie alles über Python-Listen. Erfahren Sie, wie Sie Arrays in Python nativ erstellen, segmentieren, ändern und durchlaufen.
Python-Variablen und Datentypen erklärtVerstehen Sie Python-Variablen und Kerndatentypen (Strings, Ganzzahlen, Gleitkommazahlen, Boolesche Werte). Eine vollständige Einsteigeranleitung zur Speicherzuweisung in Python.
Empfohlene Python-Ressourcen
Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.
So sortieren Sie eine Liste in Python
Erfahren Sie, wie Sie eine Liste in Python mit der Methode sort() und der Funktion sorted() sortieren. Entdecken Sie Beispiele für benutzerdefinierte Schlüsselsortierung und umgekehrte Reihenfolge.
Spickzettel für Python-String-Methoden
Ein vollständiges Referenzhandbuch für die Python-String-Manipulation. Meistern Sie das Formatieren, Suchen, Teilen, Ersetzen und Überprüfen von Zeichenfolgeneigenschaften.
Python vs. JavaScript: Welche Programmiersprache ist die beste?
Ein umfassender Vergleich zwischen Python und JavaScript. Entdecken Sie Syntaxunterschiede, Leistung, Anwendungsfälle (Backend vs. Frontend) und Codierungsbeispiele.