Python3 – Teil 5 Dictonaries (Key Values)

Erwartete Lesezeit: 2 minuten

In diesem Beitrag schauen wir uns kurz Dictonaries an. Mit Hilfe von Dictionaries können wir Key Values / Mappings speichern. Kurz gesagt besteht ein Dictionary aus einem Key (assoziatives Feld) und seinem Value.
Schauen wir uns das ganze mal an einem Beispiel an.
Wir haben eine Anzahl von Tieren und deren lateinischen Namen in einem Dictionary.

tiere = {'Hund':'Canis','Katze':'feles','Maus':'Mus'}
print(tiere['Hund'])

Führen wir das Beispiel aus, erhalten wir den Wert „Canis“ als Ausgabe.

Das hinzufügen von Einträgen zu einem Dictionary ist ebenfalls möglich. Hier ein Beispiel :

tiere = {'Hund':'Canis','Katze':'feles','Maus':'Mus'}
tiere['Schwein'] = 'sus'
print(tiere)

Als Ausgabe erhalten wir nun

{'Hund': 'Canis', 'Katze': 'feles', 'Maus': 'Mus', 'Schwein': 'sus'}

Zusammengefasst <DictionaryName>[<Key>]= <Value>.
Um Werte zu updaten kann man ebenfalls diese Syntax nutzen, indem wir einen bestehenden Key nutzen.
Wichtig an dieser Stelle noch zu sagen, ist dass das Value keine Liste sein kann. Die Verwendung von Tuples ist allerdings erlaubt.

Zum Löschen von Einträgen kann man die Dictionary-Methode pop() nutzen.

tiere.pop('Katze')

und schon ist die Katze Geschichte.

Möchte man 2 Dictionaries zusammenfügen , kann man dieses über die update() Methode machen. Sind in beiden Dictionaries identische Keys vorhanden , so werden die Werte des ersten Dictionaries beim Merge überschrieben.

tiere = {'Hund':'Canis','Katze':'feles','Maus':'Mus'}
tiere2 = {'Schwein':'sus' }
tiere.update(tiere2)
print(tiere)

Möchte man nu alle Einträge eines Dictionaries durchgehen , kann man dieses mittels einer For Schleife auf die Rückgabe der Dictionarymethode items() machen:

tiere = {'Hund':'Canis','Katze':'feles','Maus':'Mus'}
for deutsch, latein in tiere.items():
    print('Der lateinische Name für ' + deutsch + ' ist ' + latein)
Der lateinische Name für Hund ist Canis
Der lateinische Name für Katze ist feles
Der lateinische Name für Maus ist Mus

Als Varianten hierzu kann man mittels der Dictionarymehtoden keys() alle Keys und über die Methode values() alle Values durchgehen.