Woche 5
In dieser Woche beginnen wir ein grosses, neues Thema. Wir lernen wie wir mit Daten arbeiten und diese strukturieren können.
Auch in unseren bisherigen Programmen haben wir schon mit Daten gearbeitet. Zum Beispiel haben wir einer Variable eine Zahl zugewiesen, und mit dieser dann weitergerechnet und am Ende das Resultat auf dem Bildschirm ausgegeben. Wir waren aber in der einfachen Situation, dass wir immer nur eine fixe, kleine Anzahl Daten hatten. Beim Programmieren wollen wir aber häufig Daten dynamisch erzeugen oder zusammengehörige Daten gruppieren. Ein Datum besteht zum Beispiel aus drei Werten, dem Tag, dem Monat und dem Jahr. Zudem würden wir bei unserer Gambling Simulation von Woche 2 vielleicht gerne alle Resultate zwischenspeichern und grafisch aufbereiten. Da wir aber nicht wissen, wie lange es dauert bis der Gambler ruiniert wird, können wir nicht einfach eine separate Variable für jede Entscheidung definieren.
In dieser Woche schauen wir uns die zwei wichtigsten Konstrukte in Python an, die wir für das Arbeiten mit solch dynamischen Daten benötigen. Diese werden uns auch erlauben grosse Datenmengen zu handhaben.
Selbststudium
Bitte arbeiten Sie folgende Lerneinheiten vor der Präsenzvorlesung am 28. Oktober durch.
Übungen
Bearbeiten Sie die Übungen in folgendem Jupyter-Notebook:
- Übungsblatt 5 (Aufruf nur in Uninetz oder über VPN möglich)
Reichen Sie Ihre Antworten bis am 31. Oktober auf Adam ein. Sie können Ihre Antworten vorher mit unserem automatisierten Korrekturtool testen.
Präsenzvorlesung
Als Grundlage für die Präsenzvorlesung werden wir das folgende Jupyter-Notebook verwenden
- Fallstudie: Arbeiten mit Listen(Aufruf nur in Uninetz oder über VPN möglich)
Kernaussagen
- Datenstrukturen sind Mechanismen um Daten zu gruppieren und strukturieren.
- Mittels Tupels können wir eine fixe (kleine) Anzahl von Daten zusammenfassen.
- Listen erlauben uns eine im vornherein unbestimmte Anzahl von Daten zusammenzufassen.
- Die for-Schleife in Python erlaubt uns effizient über alle Tupel oder Listenelemente zu iterieren.
Lernziele
Die Studierenden
- können zusammengehörende Daten mittels Tupel und Listen organisieren.
- kennen den Unterschied zwischen Tupel und Listen.
- wissen in welcher Situation welche Datenstruktur eingesetzt wird.
- wissen wie man Listen und Tupel erzeugt.
- wissen wie auf die einzelnen Elemente von Listen und Tupel zugegriffen werden kann.
- kennen die wichtigsten Operationen auf Listen und Tupel.
- können die
range
Funktion anwenden. - können die
for
Schleife anwenden.