Skip to main content

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:

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

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.