Guten Tag
ich habe ein dict 365 Datensätzen
ein Datensatz sieht wie folgt aus
('Datum' : 2009-12-21 , 'Hoch' : 12.5 , 'Tief : 12.45)
absteigend von 31.12 -01.01 im dict abgelegt
ich suche nun für einen bestimmten Zeitraum z.b. von 2009-07-01 bis 2009-08-01
den maximalwert von Hoch
danach den minimal wert im gegebenen Zeitraum aber mit Datum kleiner
des maximal wert Datums
gibt es da eine einfache Vorgehensweise oder muss ich das dict mehrmals mit unterschiedlichen Index durchlaufen .
Mein Gedankenweg ist sehr kompliziert
A durchlaufe dict suche index von zeitraum -> ergibt 2 werte zB 182 und 85 das höhere datum hat einen niederen index
B erneuter Suchlauf des Dict suche innerhalb dieser Indexwerte nach dem Maximum merke Index Maximum, Datum Maximum und Wert
C durchlaufe Dict von Index Maximum zu Index Kleinstes gegebenes Datum suche Minimum Datum und Wert
Sehr umständlich das geht doch bestimmt einfacher ?
dict nach max min werten durchsuchen anhand von vorgaben
Ja, per list comprehension
Übrigens lässt sich dein Beitrag dank willkürlicher Rechtschreibung und Zeilenumbrüchen kaum verstehen.
Code: Alles auswählen
dataset = [item for item in dictionary.values() if datetime.date(2009, 7, 1) <= item.Datum < datetime.date(2009,8,1)]
minimum = min(item.Tief for item in dataset)