Ich versuche , die Unterschiede zwischen dem , um herauszufinden , datetime
und time
Module, und was jeder sollte verwendet werden.
Ich weiß, dass dies datetime
sowohl Datum als auch Uhrzeit liefert. Was nützt das time
Modul?
Beispiele wären willkommen und Unterschiede in Bezug auf Zeitzonen wären besonders von Interesse.
time
unddatetime.time
?Halten Sie sich an
time
, um Mehrdeutigkeiten in der Sommerzeit zu vermeiden.Verwenden Sie ausschließlich das Systemmodul
time
anstelle desdatetime
Moduls, um Mehrdeutigkeitsprobleme mit der Sommerzeit (DST) zu vermeiden .Die Konvertierung in ein beliebiges Zeitformat, einschließlich der Ortszeit, ist ziemlich einfach:
time.time()
ist eine Gleitkommazahl, die die Zeit in Sekunden seit der Systemepoche darstellt.time.time()
ist ideal für eindeutige Zeitstempel.Wenn das System zusätzlich das Network Time Protocol (NTP) ausführt Dæmon ausführt, erhält man eine ziemlich solide Zeitbasis.
Hier ist die Dokumentation des
time
Moduls.quelle
time.localtime()
, in das natürlich die Sommerzeit eingebrannt ist. Wenn wir Puristen sein wollen, sollten wir nichttime.gmtime()
stattdessen verwenden? :)ipython
zeigt, dasstime.gmtime()
ein Tupel erhalten wird, währendtime.time()
die UNIX-Epochenzeit als ein einzelner Dezimalwert von Sekunden angegeben wird, der seit 00:00:00 UTC, Donnerstag, 1. Januar 1970, vergangen ist. Die Funktiontime.localtime(t)
konvertiert die Epochenzeit in eine lokale Zeittupel. Die Antwort auf Ihre Frage lautet also «nein».t = time.time()
ist eine Gleitkommazahl, die die Zeit in Sekunden seit der Systemepoche darstellt . Daher kann man einfach 86400 Sekunden für jeden Tag addieren oder subtrahieren;t += 86400
Das Zeitmodul kann verwendet werden, wenn Sie nur die Zeit eines bestimmten Datensatzes benötigen. Nehmen wir an, Sie haben für jeden Tag eine separate Tabelle / Datei für die Transaktionen, dann benötigen Sie nur die Zeit. Der Zeitdatentyp wird jedoch normalerweise zum Speichern der Zeitdifferenz verwendet zwischen zwei Zeitpunkten .
Dies kann auch mit datetime erfolgen. Wenn es sich jedoch nur um die Zeit für einen bestimmten Tag handelt, kann das Zeitmodul verwendet werden.
Datetime wird verwendet, um bestimmte Daten und Zeiten für einen Datensatz zu speichern. Wie in einer Vermietungsagentur. Das Fälligkeitsdatum wäre ein Datetime-Datentyp.
quelle
Wenn Sie an Zeitzonen interessiert sind, sollten Sie die Verwendung von Pytz in Betracht ziehen.
quelle