Dictonary

(dt.Wörterbuch)

Ein Dictonary ist eine Sammlung, die ungeordnet, veränderbar und indiziert ist. In Python werden Wörterbücher mit geschweiften Klammern geschrieben und haben Schlüssel und Werte. Ein leeres Dictonary ohne Elemente wird mit nur zwei geschweiften Klammern geschrieben: {}. Schlüssel sind innerhalb eines Wörterbuchs eindeutig, Werte jedoch nicht. Die Werte eines Dictonaries können von einem beliebigen Typ sein, die Schlüssel müssen jedoch einen unveränderlichen Datentyp haben, z. B. Zeichenfolgen, Zahlen oder Tupel.

Erstellen Sie und geben Sie ein Wörterbuch aus:

thisdict = {
"marke": "Ford",
"model": "Mustang",
"jahr": 1977
}
print(thisdict)

Zugriff auf Elemente

Sie können auf die Elemente eines Dict zugreifen, indem Sie in eckigen Klammern auf den Schlüsselnamen verweisen:

x = thisdict["model"]

Es gibt auch eine Methode namens get (), die dasselbe Ergebnis liefert:

x = thisdict.get("model")

Folgendes ist die Syntax für die get () -Methode –

dict.get(key, default = None)

Werte ändern

Sie können den Wert eines bestimmten Elements ändern, indem Sie auf seinen Schlüsselnamen verweisen. Hier wird das Jahr auf 2019 geändert

thisdict = {
  "marke": "Ford",
  "model": "Mustang",
  "jahr": 1964
}
thisdict["jahr"] = 2019

Schleife durch ein Wörterbuch

Sie können ein Wörterbuch mit einer for-Schleife durchlaufen. Alle Schlüsselnamen im Wörterbuch nacheinander ausgeben:

for x in thisdict:
  print(x)

Beim Durchlaufen eines Wörterbuchs sind die Rückgabewerte die Schlüssel des Wörterbuchs. Es gibt jedoch auch Methoden, um die Werte zurückzugeben.

for x in thisdict:
  print(thisdict[x])

Durchlaufen Sie sowohl Schlüssel als auch Werte, indem Sie die Funktion items () verwenden:

for x, y in thisdict.items():
  print(x, y)

Überprüfen Sie, ob der Schlüssel vorhanden ist

Um festzustellen, ob ein bestimmter Schlüssel in einem Wörterbuch vorhanden ist, verwenden Sie das Schlüsselwort in:

vokabeln={
"hello":"Hallo"}
if "hello" in vokabeln:
print ("Ja, vorhanden")

In regulären Python-Wörterbüchern werden Schlüssel / Wert-Paare in beliebiger Reihenfolge durchlaufen. Im Laufe der Jahre haben mehrere Autoren alternative Implementierungen geschrieben, die sich an die Reihenfolge erinnern, in der die Schlüssel ursprünglich eingefügt wurden. Basierend auf den Erfahrungen dieser Implementierungen wurde eine neue collection.OrderedDict-Klasse eingeführt.

Die OrderedDict-API ist im Wesentlichen identisch mit regulären Wörterbüchern, wird jedoch in einer garantierten Reihenfolge Schlüssel und Werte durchlaufen, abhängig davon, wann ein Schlüssel zum ersten Mal eingefügt wurde. Wenn ein neuer Eintrag einen vorhandenen Eintrag überschreibt, bleibt die ursprüngliche Einfügeposition unverändert. Wenn Sie einen Eintrag löschen und erneut einfügen, wird er zum Ende verschoben.

Die Standardbibliothek unterstützt jetzt die Verwendung geordneter Wörterbücher in mehreren Modulen. Das Configparser-Modul verwendet sie standardmäßig. Auf diese Weise können Konfigurationsdateien gelesen, geändert und anschließend in ihrer ursprünglichen Reihenfolge zurückgeschrieben werden. Die _asdict () -Methode für Collections.namedtuple () gibt jetzt ein geordnetes Wörterbuch zurück, wobei die Werte in derselben Reihenfolge wie die zugrunde liegenden Tupel-Indizes angezeigt werden. Das json-Modul wird mit einem object_pairs_hook erstellt, damit OrderedDicts vom Decoder erstellt werden kann. Unterstützung wurde auch für Drittanbieter-Tools wie PyYAML hinzugefügt.

MethodeBeschreibung
copy()Die copy () -Methode gibt eine flache Kopie des Dictonarys zurück.
clear()Die clear () -Methode entfernt alle Elemente aus dem Dictornary
pop()Entfernt ein Element aus einem Dictornary mit dem angegebenen Schlüssel und gibt es zurück.
popitem()Entfernt das beliebige Schlüssel-Wert-Paar aus dem Dictornary und gibt es als Tupel zurück.
get()Es ist eine herkömmliche Methode, auf einen Wert für einen Schlüssel zuzugreifen.
dictionary_name.values() Gibt eine Liste aller in einem bestimmten Wörterbuch verfügbaren Werte zurück.
str()Erzeugt eine druckbare Zeichenfolgendarstellung eines Wörterbuchs.
update()Fügt die Schlüssel-Wert-Paare des Wörterbuchs dict2 zum Dikt hinzu
setdefault()Setzt dict [key] = Standard, wenn key nicht bereits im dictonary ist
keys()Gibt eine Liste der Wörterbuchschlüssel zurück
items() Gibt eine Liste der Tupelpaare dict (key, value) zurück
has_key() Gibt true zurück, wenn der Schlüssel im Wörterbuch aufgelistet ist, andernfalls false
fromkeys()Erstellt ein neues Wörterbuch mit Schlüsseln aus „seq“ und auf „value“ gesetzten Werten.
type()Gibt den Typ der übergebenen Variablen zurück.
cmp()Vergleicht Elemente von beiden Diktonarys

So sortieren Sie ein Dictonary nach Wert:

Staedte={
    "Hamburg":2000,
    "Berlin":3000,
    "Lübeck":4000,
    "Neumünster":5000}

for key, value in sorted(Staedte.items(), key=lambda item: item[1]):
    print("%s: %s" % (key, value))

Ausgabe:

Hamburg: 2000
Berlin: 3000
Lübeck: 4000
Neumünster: 5000