Überprüfung, ob Zeit in einem gewissen Zeitbereich liegt

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
danims
User
Beiträge: 29
Registriert: Montag 19. Februar 2007, 20:23
Wohnort: Bern, Schweiz

Hallo

Ich komme nicht weiter bei einem einfachen Problem aus der Realität und ich glaube, dass es eine einfache Lösung gibt, die ich noch nicht gefunden habe...

Ich habe eine Zeit, z.B. 14:30 Uhr. Das habe ich als String oder Datetime objekt. Jetzt habe ich einen Zeitbereich (z.B. 13:00 Uhr bis 16:00 Uhr), und ich muss herausfinden, ob 14:30 in diesem Zeitbereich liegt.

Ich habe gesucht bei timedelta gesucht, wurde aber nicht fündig.

Gibt's da eine einfache Lösung dafür oder hat jemand eine Idee?

Danke und Gruss
Dani
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

danims hat geschrieben:Gibt's da eine einfache Lösung dafür oder hat jemand eine Idee?
Ja, ``startzeit < dein_zeitpunkt < endzeit`` ergibt ``True`` wenn der Zeitpunkt im Intervall liegt (alle drei sind datetime-Objekte).
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Wenn es wirklich nur um Zeiten geht und keine Tageswechsel dazwischen liegen, dann genügt doch ein einfacher Vergleich der Zeichenketten, sofern konsequent mit führenden Nullen gearbeitet wird (falls nicht, lassen sich diese Nullen ja einbauen):

Code: Alles auswählen

>>> anfang = "13:00"
>>> ende = "16:00"
>>> zeit = "14:30"
>>> anfang <= zeit <= ende
True
Benutzeravatar
danims
User
Beiträge: 29
Registriert: Montag 19. Februar 2007, 20:23
Wohnort: Bern, Schweiz

@numerix: Ja es können auch Tageswechsel dazwischen liegen.
@Leonidas: Ach, okay. Das muss ich mal ausprobieren.

danke
Antworten