Seite 1 von 1

Stunden ausrechnen

Verfasst: Donnerstag 16. April 2015, 17:46
von cntrx
Hallo zusammen,
mein Chef lässt unsere Stunden von seiner Tochter berechnen und naja ich will sagen ihre Toleranz liegt bei +-15h.
Was mir nicht gerade gefällt!

Die Rechnung ist einfach nur, geht bei ihr schon die Stunden in Dezimal-Zahlen umrechnen daneben.

Wie kann ich in Pyton die Differenz zwischen 6:01 Uhr und 14:10 Uhr berechnen?

Grüße Cntrx

Re: Stunden ausrechnen

Verfasst: Donnerstag 16. April 2015, 18:07
von Sirius3
@cntrx: es gibt das datetime-Modul, das für Datumsberechnungen da ist.

Re: Stunden ausrechnen

Verfasst: Donnerstag 16. April 2015, 18:25
von Sr4l
Ganz neben bei: Sowas braucht man in diesem Jahrzehnt nicht mehr Programmieren und schon gar nicht mit Hand rechnen, da kann man LibreOffice / OpenOffice Calc oder auch Excel für verwenden, das wäre eine ganz klassische Aufgabe für diese Programme. :D

Auch wenn natürlich etwas zu programmieren immer gut ist.

Re: Stunden ausrechnen

Verfasst: Donnerstag 16. April 2015, 18:32
von cntrx
Das mit Excel ist mir klar, nur sehe ich es als schöne Übung an :)
Das Datetime-Modul habich mir schon angesehn. Ich verstehe es leider nicht so recht.
Kann mir jemand ein kurzes beispiel geben bitte?

Re: Stunden ausrechnen

Verfasst: Donnerstag 16. April 2015, 20:59
von Sr4l

Code: Alles auswählen

from datetime import datetime
st = datetime(2015,4,16, 7, 10)
et = datetime(2015,4,16, 12, 05)
dt = et - st

dt.total_seconds()
https://docs.python.org/3/library/datet ... e.datetime

Re: Stunden ausrechnen

Verfasst: Freitag 17. April 2015, 09:36
von mutetella
Habe da vor längerem mal was gebastelt: timecalc.py

mutetella

Re: Stunden ausrechnen

Verfasst: Samstag 18. April 2015, 22:36
von BlackJack

Code: Alles auswählen

In [33]: from datetime import date as Date, datetime as DateTime, time as Time

In [34]: today = Date.today()

In [35]: a = Time(14, 10)

In [36]: b = Time(6, 1)

In [37]: DateTime.combine(today, a) - DateTime.combine(today, b)
Out[37]: datetime.timedelta(0, 29340)

In [38]: diff = DateTime.combine(today, a) - DateTime.combine(today, b)

In [39]: print diff
8:09:00