Python Dictionary: Alles über die Python Dictionaries

    Avatarbild von Preet Sanghavi
    Preet Sanghavi

    veröffentlicht am: 25.05.2022
    zuletzt aktualisiert am: 19.04.2023

    Python Dictionary / Dictionaries sind einer der wichtigsten Datenstrukturen (engl. Data Structures) in Python!

    In diesem Beitrag lernen wir das Python Dictionary kennen und schauen uns an was wir mit ebendiesen alles machen können.

    Python ist eine Hochsprache in der Programmiertechnik, die vor allem für ihre einfache Lesbarkeit, einfache Syntax und die umfangreiche Bibliotheksunterstützung und Sammlungen bekannt ist.
    Eine Sammlung in Python ist eine Art Container/Box, die von uns zum Speichern von Daten verwendet werden kann. Es gibt vier verschiedene Sammlungen in Python (List, Set, Tuple und das Python Dictionary). Jede dieser Sammlungen hat seine eigenen Eigenschaften und Verwendungszwecke. Während sich die ersten drei sich relativ wenig unterscheiden, weist das Dictionary einen größeren Unterschied auf.

    Ein Python Dictionary speichert alle Daten immer als Schlüssel-Wert-Paar ab. Dies ist ähnlich zu den Objekten in JavaScript. Aufgrund seiner Eigenschaften verwenden wir das Python Dictionary relativ oft. Deshalb werden wir in diesem Artikel über das Dictionary sprechen.

    Was ist ein Python Dictionary?

    Ganz einfach gesprochen ist das Dictionary eine Sammlung für Daten in Python. Die Daten werden dabei immer als Schlüssel-Werte-Paar gespeichert. Der Mechanismus ist also so gestrickt, dass wir für jeden Wert immer einen Schlüssel besitzen.

    Ein Schlüssel ist in einem Dictionary immer eindeutig, während der Wert unter verschiedenen Schlüsseln auch der gleich sein kann. Darüber hinaus können Werte von jedem Datentyp (engl. Data Type) sein.

    Der Unterschied zwischen dem Dictionary und anderen Sammlungen?

    Neben dem Dictionary könnten wir auch eins der drei anderen Sammlungen nutzen: List, Set, Tuple. Lasst uns deshalb einmal den Unterschied zwischen den drei Erwähnten und dem Dictionary betrachten.

    Die List erlaubt unter anderem doppelte Einträge, während wir, wie bereits besprochen, bei einem Dictionary keine doppelten Schlüssel nutzen dürfen. Allerdings können wir Werte mehrfach nutzen.

    Während das Dictionary veränderbar ist, erlaubt das Tupel keine Änderungen nach dem Erstellen.

    Ein Set erlaubt, wie auch das Dictionary, keine doppelten Schlüssel/Einträge und ist zudem nicht über den Schlüssel adressierbar, wie wir ihn in einem Dictionary vorfinden.

    Ein Python Dictionary erstellen

    Um ein leeres Dictionary zu erstellen oder zu initialisieren, können wir die dict()-Methode nutzen oder einfach geschweifte Klammern {} verwenden.

    # Nutzung der dict()-Methode
    leeres_dict = dict()
    # Nutzung von geschweiften Klammern
    neues_leeres_dict = {}

    Wir können dem Dictionary Schlüssel-Wert-Paare hinzufügen, während wir es initialisieren, indem wir Schlüssel-Wert-Paare zwischen geschweifte Klammern setzen, die wir durch Kommas trennen:

    mein_erstes_dictionary = {
        "thema": "woerterbuch",
    	"vokale": ["a" , "e" , "i" , "o" , "u"]
    }

    Auf die Elemente des Python Dictionaries zugreifen

    Auf die Elemente des Dictionaries kann einfach mit eckigen Klammern und dem Schlüssel zugegriffen werden.

    Alternativ können wir auch die Methode get() verwenden, um auf Elemente des Dictionarys zuzugreifen.

    Die Methode get() nimmt den Schlüssel als Eingabe und gibt den Wert zurück, der dem Schlüssel entspricht.

    mein_erstes_dictionary = {
        "thema": "woerterbuch",
    	"vokale": ["a" , "e" , "i" , "o" , "u"]
    }
    
    # Auf Elemente mithilfe eckiger Klammern zugreifen []:
    print(mein_erstes_dictionary["thema"])
    # Auf Elemente mithilfe der get-Methode zugreifen:
    print(mein_erstes_dictionary.get("vokale"))
    Schlüssel-Wert-Paare (engl. Key-Value-Pairs, Key-Value-Pair) sind essentiell beim Programmieren mit Python!

    Den Wert eines Schlüssel-Wert-Paars im Python Dictionary ändern

    Ein neuer Wert kann einem beliebigen Schlüssel-Wert-Paar innerhalb vom bestehenden Python Dictionary einfach dadurch zugewiesen werden, dass der entsprechende Schlüssel verwendet wird:

    new_dict = {
        "topic": "dictionary",
    	"vowels": ["a" , "e" , "i" , "o" , "u"]
    }
    new_dict["topic"] = ["vowels and consonents"]
    new_dict["consonents"] = ['b' ,'c' ,'d']
    print(new_dict)
    Ein Dictionary (engl. a Dictionary) ist für solche Anwendungsfälle ideal geeignet!

    Hinweis: Wenn der angegebene Schlüssel nicht im Wörterbuch vorhanden ist, so wird ein neues Schlüssel-Wert-Paar erstellt. Das gleiche Verhalten ist im obigen Beispiel zu sehen.

    Im Python Dictionary iterieren

    Wir können alle Schlüssel-Wert-Paare mit der Python for-Schleife und mithilfe verschiedener Methoden des Dictionarys durchlaufen:

    mein_erstes_dictionary = {"thema": "woerterbuch", "vokale": ["a", "e", "i", "o", "u"]}
    
    # keys() gibt eine Liste von Dictionary-Schlüsseln zurück
    for schluessel in mein_erstes_dictionary.keys():
        print(schluessel, mein_erstes_dictionary[schluessel])
    
    print("---------")
    
    # items() gibt eine Liste von Tupeln von Schlüssel und Wert zurück
    for element in mein_erstes_dictionary.items():
        print(element)
    Mit if und in können wir zudem auch überprüfen, ob ein Element vorhanden ist!

    Prüfen, ob ein bestimmtes Element im Python Dictionary existiert

    Es gibt zwei Möglichkeiten, zu prüfen, ob ein bestimmtes Element im Wörterbuch vorhanden ist.

    • Verwendung von if und in Schlüsselwort:
    mein_erstes_dictionary = {"thema": "woerterbuch", "vokale": ["a", "e", "i", "o", "u"]}
    
    if "thema" in mein_erstes_dictionary:
        print('Element "thema" haben wir im Dictionary gefunden')
    else:
        print('Element "thema" haben wir nicht im Dictionary gefunden')
    
    if "konsonanten" in mein_erstes_dictionary:
        print('Element "konsonanten" haben wir im Dictionary gefunden')
    else:
        print('Element "konsonanten" haben wir nicht im Dictionary gefunden')
    Mit der contains-Methode können wir also ermitteln, ob ein Element bereits vorhanden ist!
    • Mithilfe der _contains_() Methode

    Die Methode _contains_() nimmt den Schlüssel des zu prüfenden Elements als Eingabe und gibt True zurück, wenn eine Übereinstimmung mit der gegebenen Eingabe gefunden wurde, andernfalls wird False zurückgegeben

    mein_erstes_dictionary = {"thema": "woerterbuch", "vokale": ["a", "e", "i", "o", "u"]}
    
    print(mein_erstes_dictionary.__contains__("thema"))
    print(mein_erstes_dictionary.__contains__("konsonanten"))
    Schau dir gerne unsere intensiven Pythonkurs (inklusive Video) an, um mehr über das Python Dictionary zu lernen!

    Schlüssel-Wert-Paare aus dem Python Dictionary entfernen

    Es gibt zwei Möglichkeiten, ein Schlüssel-Wert-Paar aus einem Dictionary zu entfernen oder zu löschen.

    • Das Schlüsselwort del verwenden: Wir können den Schlüssel eines beliebigen Schlüssel-Wert-Paares verwenden, um dieses bestimmte Schlüssel-Wert-Paar zu löschen.
    mein_erstes_dictionary = {"thema": "woerterbuch", "vokale": ["a", "e", "i", "o", "u"]}
    
    # Vor dem Löschen:
    print(mein_erstes_dictionary)
    
    # Löschen mithilfe von del
    del mein_erstes_dictionary["thema"]
    
    # Nach dem Löschen:
    print(mein_erstes_dictionary)
    Wir können die del-Methode verwenden, um die einzelnen Dictionary Elements (engl. Data Values) zu entfernen!
    • Verwendung der Methode pop(): Die Methode pop() nimmt den Schlüssel des zu löschenden Paares und gibt den Wert des gelöschten Paares zurück.
    mein_erstes_dictionary = {"thema": "woerterbuch", "vokale": ["a", "e", "i", "o", "u"]}
    
    # Vor dem Löschen:
    print(mein_erstes_dictionary)
    
    # Löschen mithilfe von pop()
    print("Wert des gelöschten Elements : ", mein_erstes_dictionary.pop("thema"))
    
    # Nach dem Löschen:
    print(mein_erstes_dictionary)
    Wir verwenden die pop()-Methode, um die Inhalte unseres Python Dictionary / Dictionaries zu entfernen.

    Alle Elemente aus einem Python Dictionary löschen

    Wir können das Wörterbuch einfach mit der entsprechende Dictionary-Variable und dem Schlüsselwort del löschen:

    new_dict = {
        "topic": "dictionary",
    	"vowels": ["a" , "e" , "i" , "o" , "u"]
    }
    
    del new_dict
    
    print(new_dict)
    Als Ergebnis (engl. Result) erhalten wir bei dem Dictionary folgende Fehlermeldung: Traceback most recent call last

    Wie wir im obigen Beispiel sehen können, gibt der Code einen Fehler aus, was bedeutet, dass das Dictionary nicht mehr existiert.

    Es gibt eine weitere Methode clear(), die alle Elemente im Wörterbuch löscht.

    Der einzige Unterschied zwischen clear() und del ist, dass clear() nicht das ganze Wörterbuch löscht, während del das ganze Wörterbuch löscht.

    Zusammenfassung: Das Python Dictionary

    Damit haben wir das Konzept des Dictionary in Python kennengelernt und die verschiedenen, möglichen Operationen im Zusammenhang mit einem Dictionary gezeigt.

    😩 Gelangweilt von den Udemy & YouTube-Tutorials?!

    Lerne spielerisch Python und komme deiner gutbezahlten (und an der 🌴 liegenden) Traumkarriere einen Schritt weiter.

    TP Star TP Star TP Star TP Star TP Star

    "Für Leute die gerne Python oder Java lernen wollen ist Codegree klasse. Ist nicht wie bei anderen Konkurrenten auf Videokursen aufgebaut..."

    - Lennart Sparbier

    100% kostenlos registrieren · keine Kreditkarte notwendig

    👋 Wir warten bereits auf dich!

    Lerne das, was du wirklich brauchst.

    Im Gegensatz zu der Abendschule oder der alteingesessenen Uni lernst du bei codegree die Sprachen & Pakete, die wirklich im Jobmarkt gesucht werden.

    Logo von Python
    Logo von PyTorch
    Logo von Pandas
    Logo von Matplotlib
    Logo von Java
    Logo von NumPy
    Mehr erfahren

    100% kostenlos registrieren · keine Zahlungsdaten notwendig