Die Berechnung der Zeit in Python (datetime.timedelta?)
Ich bin sicher, das ist ein nobrainer für viele von Euch, aber ich finde mich echt verwirrt mit den ganzen datetime.timedelta Sache. Im wesentlichen habe ich timestamp etwas, wenn ich starten startTime
und dann habe ich timestamp am Ende des Prozesses endTime
und ich werde versuchen, die Differenz in HH:MM:SS und habe kein Glück.
Bekomme ich diesen Fehler wenn ich drucken endTime - startTime
:
TypeError: unsupported operand type(s) for -: 'datetime.time' and 'datetime.time'
Bearbeitet gehören Endergebnis:
startTime = datetime.now()
<... my looping process ...>
endTime = datetime.now()
calcdTime = endTime - startTime
print str(calcdTime)[:-4]
Diese Ausgänge: H:MM:SS.MM (so Strippen die letzten 4 Zeichen aus der timedelta
datetime.datetime
unddatetime.date
Unterstützung Subtraktion, aberdatetime.time
nicht. Versuchen Sie es mitdatetime.datetime
statt
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
datetime
statt einertime
. Subtrahiert man mal von der anderen ist bedeutungslos, ohne Datum; Sie können nicht einfach davon ausgehen, dass Sie auf den gleichen Tag und den linken Operanden zuerst kommt.Je nachdem, was Sie tun, mit den Informationen, möchten Sie vielleicht, um Sie nur
Zeit.Zeit
:Wird Ihnen die abgelaufene Zeit in Sekunden. Dies ist oft bequemer, als mit einem
timedelta
.