Uhrzeiten vergleichen

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
BasterTWO
User
Beiträge: 75
Registriert: Donnerstag 25. Oktober 2007, 20:03

Hallo Python-Friends,
ich wollte mal wissen wir ihr folgendes Problem lösst.

Ich habe zwei Uhrzeiten im selben Format (HH:MM:SS) nun will ich sie mit einanderen vergleichen z.B. ist Uhrzeit 1 5min später also Uhrzeit 2. Ich habe keine Ahnung wie man so was vergleichen könne, wäre super wenn ihr mir dabei helfen könntet.

MfG
BasterTWO
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Uhrzeiten in (date)time Objekte konvertieren und dann das timedelta bilden.
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 dir nur um das Vergleichen (und nicht um die Berechnung der Zeitdifferenz) geht, dann genügt ein Zeichenkettenvergleich (sofern "hh" bedeutet, dass ggf. eine führende Null dort steht):

Code: Alles auswählen

>>> "12:34:47" < "15:21:04"
True
Und wenn du doch die Zeitdifferenz brauchst, dann z.B. so:

Code: Alles auswählen

>>> zeit1 = "12:34:47"
>>> zeit2 = "15:21:04"
>>> sec = lambda zeit:sum([int(v)*60**(2-n) for n,v in enumerate(zeit.split(":"))])
>>> print "Differenz in Sekunden: %i" %(sec(zeit2)-sec(zeit1))
Differenz in Sekunden: 9977
Benutzeravatar
HWK
User
Beiträge: 1295
Registriert: Mittwoch 7. Juni 2006, 20:44

Solange es noch reduce gibt:

Code: Alles auswählen

>>> def sec(x):
	return reduce(lambda a, b: 60 * int(a) + int(b), x.split(':'))

>>> sec('1:34:39')
5679
MfG
HWK
audax
User
Beiträge: 830
Registriert: Mittwoch 19. Dezember 2007, 10:38

Das wird es auch noch lange geben, im itertools Modul
Benutzeravatar
BlackVivi
User
Beiträge: 762
Registriert: Samstag 9. Dezember 2006, 14:29
Kontaktdaten:

audax hat geschrieben:Das wird es auch noch lange geben, im itertools Modul
*functools
audax
User
Beiträge: 830
Registriert: Mittwoch 19. Dezember 2007, 10:38

Soll mir auch recht sein...
Antworten