Python 3 Grundkurs

Dictionary anlegen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Der Datentyp Dictionary dient dazu, Schlüsselwertpaare in einer Struktur abzulegen. Der Trainer fügt die im praktischen Beispiel berechneten Werte einem Dictionary als Schlüsselwert hinzu.

Transkript

Ein weiterer Datentyp, der neben sequentiellen Datentypen und numerischen Datentypen von großer Bedeutung ist, nennt sich Dictionary, also auf Deutsch Wörterbuch. Mit Dictionaries lassen sich Schlüssel-Wert-Paare in einer eigenen Datenstruktur ablegen. Die schauen wir uns jetzt mal in IDLE an. So. Und ja, ich werde jetzt in IDLE ein Dictionary anlegen, das sich datenspeicher nennt - ganz willkürlich, der Name - im Übrigen so würde ein leeres Dictionary aussehen. Dictionaries werden also mit geschweiften Klammern eingeleitet. Und - ich nehme jetzt mal den gleichen Namen - ich kann jetzt auch ein Dictionary anlegen, das zwei Schlüssel-Wert-Paare enthält, beispielsweise als Schlüssel 'Alex' mit einem bmi-Wert, und noch einem Schlüssel, 'Pinki', die Katze, mit einem etwas übergewichtigen Wert - sowas - ist ja ganz egal. So. Und das Ganze kann ich hier auch ausgeben. Ja, wie Sie sehen habe ich hier also zwei Schlüssel-Wert-Paare in den Dictionary eingebaut. Den Wert 23.45 habe ich unter dem Schlüssel Alex, und den Wert 32.54 unter dem Schlüssel Pinky abgelegt. Ich kann jetzt auch auf einzelne Schlüssel-Wert-Paare zugreifen, das mache ich wie folgt: ich kann jetzt also sagen datenspeicher, und dann muss ich den Schlüssel eingeben 'Alex', und dann erhalte ich den Wert. Ja, jetzt kann ich noch prüfen, ob ein Schlüssel enthalten ist, und zwar wie folgt: ich gebe den Schlüssel erst mal ein und dann sage ich in, und schreibe dann den Namen des Dictionaries hin, und dann erhalte ich ein True, weil 'Alex' ja drin enthalten ist, und somit ist das Schlüssel-Wert-Paar hier, also da. Ja, jetzt ist es natürlich interessant zu wissen, gehört ein Datenspeicher zu den mutable oder immutable Datentypen, das heißt, kann ich denn jetzt die Elemente, die in der Datenreihe sind, verändern, kann ich dort etwas entfernen oder nicht. Und, ja, überraschenderweise ist es so, dass Datenspeicher genau wie Listen veränderbar sind, das heißt, ich könnte jetzt auch ein Element dort herauslösen, dies mache ich mit dem Schlüsselwert del - so - und jetzt kann ich sagen: del datenspeicher und dann nehme ich mal den 'Alex' und lösche ihn da raus. Ich kann jetzt überprüfen, ob der 'Alex' enthalten ist, das mache ich am besten mal wieder so: 'Alex' in datenspeicher - ist nicht mehr da - der ist weg! Das geht also, ich kann dann das Schlüssel-Wert-Paar 'Alex' mit seinem Wert auch wieder hinzufügen, indem ich die Methode update benutze. Das geht so: update und dann füge ich ein ganzes Dictionary dort hinzu, und in das Dictionary schreibe ich rein: 'Alex' und dann den Wert, und das schaue ich mir jetzt auch noch mal an. Ja! Und jetzt ist er wieder dabei. Genauso kann ich jetzt auch Folgendes machen: ich kann auch hingehen und - ja, durch den Datenspeicher durchtarieren über eine Vorschleife, das würde so gehen: for und dann nehme ich i als Variable in, und dann datenspeicher.items. So, jetzt habe ich meine Vorschleife - und - in dem Anweisungsblock werde ich ganz einfach bloß i ausgeben. So, und dann sehen Sie, dass mir die Schlüssel-Wert-Paare untereinander ausgegeben werden. Ich kann mir auch nur alle Werte geben lassen, datenspeicher - das kann ich auch so machen - for i in datenspeicher.values for i in datenspeicher.values Das ist also die Funktion values, die mir jetzt die Werte in i jeweils reinsetzen wird, in einer Iteration, und die ich dann hier über print ausgeben lassen kann. So, da habe ich jetzt nur die Werte. Ich kann jetzt auch hingehen, und auch nur die Schlüssel mir holen lassen: datenspeicher.keys So, und dann kann ich jetzt hier die Schlüssel ausgeben, und dann hätte ich genauso die Schlüssel. Ja, so ein Dictionary können wir jetzt auch in unserem EDV-Programm nutzen. Ich werde jetzt mal über File Recent Files main.py unser Programm öffnen, und jetzt kann ich hingehen und den Datenspeicher mal einbauen, den Dictionary genauer gesagt, und den nenne ich hier auch wieder datenspeicher, und das würde ja eine leere Liste erzeugen, das wollen wir nicht, wir wollen ein Dictionary haben, also, muss ich geschweifte Klammern benutzen. Und wie geht es dann weiter? Wir hatten ja hier die Liste, und hier hatten wir den BMI-Wert reingesetzt, Das müssen wir aber jetzt etwas komplexer programmieren, denn zunächst mal ist es ja so, dass wir in dem Datenspeicher, also in dem Dictionary, da wollen wir ja jetzt ein Schlüssel-Wert-Paar hineinsetzen, und zwar besteht der Schlüssel aus dem Namen, der hier oben eingegeben wurde, und ja, der Wert, der zu dem Schlüssel gehört, das wird dann eine Liste von BMI's sein. Also diese bmis, dass werden wir dann unter dem Schlüssel-Namen ablegen. Schauen wir uns das mal an. Das wird dann also wie folgt sein: diese Zeile, die können wir eigentlich stehen lassen, das ist volkommen okay, nur da drunter, das nehme ich mal raus, so, da drunter, da wird Folgendes erfolgen: und zwar nehmen wir hier den datenspeicher, und werden dann sagen: update, das geht ja, und hier muss jetzt der Schlüssel - in einem Dictionary drin, also in geschweiften Klammern drin sein, der Schlüssel ist ja name und nach dem Doppelpunkt kommen dann die bmis. So, das würde ausreichen, um den namen mit seinen bmis dort abzulegen, beziehungsweise zu aktualisieren. Die bmis, die werden auch den aktuellen BMI-Wert auch haben - und - da müssen wir uns noch um eine andere Sache kümmern, und zwar müssen wir zunächst mal schauen, ob denn der Name bereits im Datenspeicher enthalten ist. Wenn ja, holen wir die vorhandenen bmis, denn zu den vorhandenen soll ja der aktuelle dort dann hinzu gefügt werden -, ist er aber nicht vorhanden, dann müssen wir eine leere bmi-Liste erzeugen, und dann würden wir den bmi-Wert zu der leeren bmi-Liste hinzufügen. Also, ich gehe mal hier Schritt für Schritt vor - ganz einfach -, so schwierig ist das nicht: if name in datenspeicher, hatten wir gesagt, also, wenn der bereits enthalten ist, dann, ja dann brauchen wir die Liste, weil die bmi-Liste, die soll ja nur aktualisiert werden, in dem Fall. Also brauchen wir hier die Liste und dann lasse ich mir die ausgeben: datenspeicher - und wie erhalten wir die? Über den Namen. So, ist der aber nicht enthalten, befinden wir uns ja sozusagen auf der grünen Wiese, da können wir alles neu machen, also brauchen wir eine nagelneue bmis, bei der wir dann hier den bmi-Wert hinzufügen, genauso wie wir es hier getan hätten, also das können wir so stehen lassen, und danach können wir das hier auch noch lassen, das passt alles hier. Sehr gut! So, das werde ich jetzt mal ausprobieren. So, das scheint zumindest keine Fehler zu verursachen. Jetzt fehlt natürlich irgendeine Ausgabe - die müssen wir jetzt anders programmieren, als wir es bisher gemacht haben. Und zwar werde ich auch wieder eine Vorschleife verwenden, Aber wie gehen wir da vor? for und in, da wissen wir, die beiden Schlüsselwörter, die brauchen wir ja schon mal. Hier muss dann irgendie eine Variable rein, die nenne ich mal wieder i. So, wir wollen durch den Datenspeicher durch, das ist auch klar - und was brauchen wir? Wir brauchen die Schlüssel-Wert-Paare, beispielsweise. Wir hatten gesagt, die holen wir über die Funktion items, so - und - jetzt haben wir in i, dann immer jeweils in der Iteration ein Schlüssel-Wert-Paar enthalten, und das können wir uns jetzt einfach ausgeben. Einfach so. Also nochmal: 'Alex' 1.75 und dann irgendein Gewicht Und dann hätten wir das!

Python 3 Grundkurs

Lernen Sie die Entwicklungsumgebung sowie die grundlegenden Konzepte von Python kennen und schreiben Sie schon bald eigene Anwendungen.

4 Std. 33 min (49 Videos)
Derzeit sind keine Feedbacks vorhanden...
Software:
Exklusiv für Abo-Kunden
Ihr(e) Trainer:
Erscheinungsdatum:26.03.2015
Laufzeit:4 Std. 33 min (49 Videos)

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!