Python Dictionary: Wie funktionieren die assoziativen Listen?
In der Internet-Programmiersprache Python ist das Dictionary ein wichtiger Datentyp, mit dem Begriffe und Bedeutungen miteinander verknüpft werden können. Durch die Verwendung von Schlüssel-Wert-Paaren lassen sich so viele Tabellen, Datenerhebungen oder Bestände erstellen. Ein Python Dictionary kann auch mit Python-for-Loops, Python-if-else-Anweisungen und Python-while-Schleifen verwendet werden.
- DNS-Management
- SSL-Verwaltung
- API-Dokumentation
Was ist ein Python Dictionary?
Bei einem Python Dictionary handelt es sich um einen Datentyp, der Begriffe und Bedeutungen miteinander verknüpft. In dieser Struktur können Schlüssel (keys) und Werte (values) miteinander verbunden, gespeichert und später wieder abgerufen werden. Während die Übersetzung „assoziative Liste“, die manchmal im deutschen Sprachgebrauch für ein Python Dictionary gebraucht wird, eher sperrig ist, führt das simple „Wörterbuch“ auf die richtige Spur. Wie in einem Wörterbuch, in dem ein Begriff mit einer dazugehörigen Erläuterung oder Übersetzung verbunden ist, wird auch in einem Python Dictionary eine Zuordnungstabelle erstellt, die keine Duplikate enthalten darf. Jeder Schlüssel kommt somit nur einmal vor.
Python Dictionary: Aufbau und Abfrage
Ein Python Dictionary wird immer von geschweiften Klammern eingefasst. Der Schlüssel und sein dazugehöriger Wert werden durch einen Doppelpunkt miteinander verbunden und die so entstehenden Paare durch Kommata voneinander getrennt. Ein Python Dictionary darf dabei theoretisch beliebig viele Schlüssel-Wert-Paare enthalten. Der Schlüssel wird wiederum in Anführungszeichen gesetzt. Die Schreibweise kennen Sie sicher bereits aus einem Python-Tutorial. Sie sieht beispielsweise so aus:
{ "Key_1" : Value, "Key_2" : Value, "Key_3" : Value }
Ausgelesen wird das Python Dictionary, indem man den richtigen Schlüssel in eckige Klammern setzt. Hier die Schreibweise im Code:
dictionary [ key ]
Beispiel für ein Python Dictionary
Mit einem einfachen Beispiel lassen sich Aufbau und Funktionsweise des Python Dictionary gut erläutern. Im folgenden Aufbau sollen Länder und Hauptstädte zugeordnet und ausgegeben werden. Dabei sieht das Python Dictionary so aus:
hauptstadt = { "England" : "London", "Frankreich" : "Paris", "Deutschland" : "Berlin" }
Möchten Sie jetzt ein bestimmtes Element abfragen, nutzen Sie dafür die eckigen Klammern:
print ( hauptstadt [ "Frankreich" ] )
Die Ausgabe wäre in diesem Fall der Wert, der zum Key "Frankreich" gehört, also "Paris".
Alternativer Aufbau
Alternativ können Sie ein Python Dictionary auch ohne Inhalt aufbauen und dann füllen. Dafür wird zunächst immer ein leeres Python Dictionary erstellt, das so aussieht:
hauptstadt = { }
Nun füllen Sie das Dictionary:
hauptstadt = { }
hauptstadt [ "England" ] = "London"
hauptstadt [ "Frankreich" ] = "Paris"
hauptstadt [ "Deutschland" ] = "Berlin"
Wenn Sie jetzt das Python Dictionary "hauptstadt" abfragen, erhalten Sie als Ausgabe:
{ "England" : "London", "Frankreich" : "Paris", "Deutschland" : "Berlin" }
Python Dictionary nachträglich ändern
Sie können Ihr Python Dictionary auch nachträglich verändern. Um beispielsweise Schlüssel-Wert-Paare hinzuzufügen (engl. „append“), schreiben Sie:
hauptstadt [ "Italien" ] = "Rom" print ( hauptstadt )
Die passende Ausgabe lautet nun:
{ "England" : "London", "Frankreich" : "Paris", "Deutschland" : "Berlin", "Italien" : "Rom" }
Möchten Sie einen Wert innerhalb eines Schlüssel-Wert-Paares ändern, nutzen Sie den folgenden Code:
hauptstadt = { "England" : "London", "Frankreich" : "Paris", "Deutschland" : "Berlin", "Italien" : "???" }
hauptstadt [ "Italien" ] = "Rom" print ( hauptstadt )
Die Ausgabe lautet dann erneut:
{ "England" : "London", "Frankreich" : "Paris", "Deutschland" : "Berlin", "Italien" : "Rom" }
Schlüssel-Wert-Paare aus dem Python Dictionary entfernen
Um nachträglich ein Schlüssel-Wert-Paar aus dem Python Dictionary zu entfernen, gibt es drei Möglichkeiten: del, pop und popitem.
Entfernen mit del
Für die del-Methode eignet sich als Beispiel eine einfache Bestandsaufnahme. Nehmen wir dazu an, dass eine Bäckerei zur Geschäftsöffnung 100 Brötchen, 25 Brote und 20 Croissants anbietet. Das entsprechende Python Dictionary sähe dann so aus:
bestand = { "Brötchen" : 100, "Brote" : 25, "Croissants" : 20 }
Verkauft die Bäckerei nun alle Croissants und will sie aus ihrer Auflistung löschen, nutzt sie dafür den del-Befehl:
del bestand [ "Croissants" ]
print bestand
{ "Brötchen" : 100, "Brote" : 25 }
Bei dieser Methode müssen Sie allerdings darauf achten, dass Sie den del-Befehl immer in Verbindung mit einem Schlüssel-Wert-Paar verwenden. Ansonsten wird das gesamte Python Dictionary gelöscht. Dies ist ein Python-Problem, das relativ häufig auftritt.
Entfernen mit pop
Die zweite Möglichkeit, um Schlüssel-Wert-Paare aus einem Python Dictionary zu entfernen, ist pop. Damit speichern Sie den entfernten Wert in einer neuen Variablen. Das funktioniert wie folgt:
zahlenreihe = { "Eins" : 1, "Zwei" : 2, "Drei" : 3, "Vier" : 4 }
gelöscht = zahlenreihe.pop ( "2" )
print ( "Die gelöschte Zahl lautet: ", gelöscht )
print ( "Die neue Zahlenreihe lautet: ", zahlenreihe )
Die Ausgabe sieht dann so aus:
Die gelöschte Zahl lautet: 2
Die neue Zahlenreihe lautet: { "Eins" : 1, "Drei" : 3, "Vier" : 4 }
Entfernen mit popitem
Mit popitem entfernen Sie das letzte Schlüssel-Wert-Paar aus Ihrem Python Dictionary. Dies ist der passende Code:
letzte_zahl = zahlenreihe.popitem( )
print ( letzte_zahl )
print ( zahlenreihe )
Ihre Ausgabe sieht dann so aus:
( "Vier" : 4 )
{ "Eins" : 1, "Zwei" : 2, "Drei" : 3 }
( "Vier" : 4 )
{ "Eins" : 1, "Zwei" : 2, "Drei" : 3 }
Weitere Methoden für das Python Dictionary
Es gibt einige weitere Methoden, die mit einem Python Dictionary funktionieren. Hier eine Auflistung der wichtigsten Optionen:
Methode | Beschreibung |
---|---|
Clear | Mit clear werden alle Schlüssel-Wert-Paare aus dem Python Dictionary entfernt. |
Copy | copy legt eine Kopie des Dictionarys im Speicher an. |
Get | Mit get wird der Wert über die Eingabe des Schlüssels ermittelt. |
Keys | Mit keys lesen Sie die Schlüssel Ihres Dictionarys aus. |
Update | Mit update erweitern Sie ein Python Dictionary um ein weiteres. Bei doppelten Schlüsseln werden diese im angehängten Dictionary überschrieben. |
Values | Mit values fragen Sie alle Werte Ihres Dictionarys ab. |