Komplexere Daten verarbeiten

Eine Liste mit Datentupeln

Bei der Verarbeitung von Aktienkursdaten macht es meist Sinn, neben den Kurswerten auch das jeweilige Datum mit zu verwalten. Hier noch einmal ein Auszug aus der DAX-Kursentwicklung. Angegeben ist hier jeweils der Kurs bei der Schließung der Frankfurter Börse.

30.06.2015: 10944.97
29.06.2015: 11083.20
26.06.2015: 11492.43
25.06.2015: 11473.13
24.06.2015: 11471.26

Zur Verwaltung dieser Daten benötigt man eine geeignete Darstellung der Daten. Wir verwenden in Folgenden eine Liste, deren Elemente Tupel sind, die jeweils aus einer Zeichenkette (zur Darstellung des Datums) und einer Gleitkommazahl (zur Darstellung des zugehörigen Kurswertes) bestehen.

>>> daten = [('2015-06-30', 10944.97),
             ('2015-06-29', 11083.2),
             ('2015-06-26', 11492.43),
             ('2015-06-25', 11473.13),
             ('2015-06-24', 11471.26)]

Der Zugriff auf die Elemente der Liste (d.h. die Tupel) und deren Elemente ist recht naheliegend.

>>> daten = [('2015-06-30', 10944.97), ('2015-06-29', 11083.2), ('2015-06-26', 11492.43), ('2015-06-25', 11473.13), ('2015-06-24', 11471.26)]
>>> daten[0]
('2015-06-30', 10944.97)
>>> daten[0][0]
...
>>> daten[0][1]
...
>>> daten[2][1]
...
>>> daten[3][0]
...

Aufgabe 1

Stelle Vermutungen auf, was Python als Ergebnisse zurückliefert. Überprüfe deine Vermutungen, indem du den Python-Dialog selbst führst.

Nochmal - maximaler Kurswert

Im Abschnitt Minimale und maximale Kurswerte wurde eine Funktion zur Bestimmung des maximalen Wertes einer übergebenen Zahlenliste entwickelt.

Diese Funktion soll jetzt so abgeändert werden, dass sie Listen mit Datum-Kurswert-Tupeln verarbeiten kann:

<Black-Box-Diagramm><Funktionsname>maxKurswert</Funktionsname><Übergaben><Übergabe><Wert>[('2015-06-30', 10944.97), ('2015-06-29', 11083.2), ...]</Wert><Variable>kursListe</Variable><Typ>list</Typ></Übergabe></Übergaben><Rückgabe><Typ>tuple</Typ><Wert>('2015-06-26', 11492.43)</Wert></Rückgabe></Black-Box-Diagramm>

Aufgabe 2

Entwickle eine geeignete Funktionsdefinition. Teste ausgiebig.

X

Fehler melden

X

Suche