Konvertiert Datetime in Epoche in Python
- Explizite Methode zum Konvertieren von Datetime in Epoch in Python verwenden
-
Verwenden der Funktion
timestamp()
zum Konvertieren von Datetime in Epoche in Python -
Verwendung von die Funktion
strftime(format)
zum Konvertieren von Datetime in Epoch in Python -
Verwenden Sie die Funktion
timegm
, um DateTime in Python in Epoch zu konvertieren
Die Bibliothek datetime
kann in ein Python-Programm importiert werden. Es enthält Klassen, die zum Bearbeiten von Datum und Uhrzeit im Python-Code verwendet werden.
Die Epoche ist der Ausgangspunkt für die Messung der verstrichenen Zeit. Ihr Wert variiert normalerweise und hängt von der verwendeten Plattform ab.
In diesem Tutorial werden verschiedene Methoden zum Konvertieren von Datetime in Epoche in Python erläutert.
Explizite Methode zum Konvertieren von Datetime in Epoch in Python verwenden
Bei dieser Methode nehmen wir das aktuelle Datum und subtrahieren es manuell vom Startdatum und konvertieren es dann in Sekunden, indem wir die Funktion total_seconds()
verwenden und es anzeigen.
Das erste Datum hier ist 1970/1/1.
Der folgende Code verwendet die explizite Methode, um datetime in Python in eine Epoche zu konvertieren.
import datetime
ts = (
datetime.datetime(2019, 12, 1, 0, 0) - datetime.datetime(1970, 1, 1)
).total_seconds()
print(ts)
Ausgabe:
1575158400.0
Verwenden der Funktion timestamp()
zum Konvertieren von Datetime in Epoche in Python
Ein Zeitstempel ist eine Reihe von Zeichen, die den Wert des Auftretens eines bestimmten Ereignisses bestimmen.
Python bietet eine Funktion timestamp()
, mit der der Zeitstempel von datetime seit der Epoche abgerufen werden kann.
Der folgende Code verwendet die Funktion timestamp()
, um datetime in Python in eine Epoche umzuwandeln.
import datetime
ts = datetime.datetime(2019, 12, 1, 0, 0).timestamp()
print(ts)
Ausgabe:
1575158400.0
Dies ist eine ziemlich einfache Methode und liefert uns genaue Ausgaben.
Beachten Sie, dass die Funktion timestamp()
nur unter Python 3.3+ funktioniert und nicht für die Verwendung in älteren Versionen von Python gilt.
Verwendung von die Funktion strftime(format)
zum Konvertieren von Datetime in Epoch in Python
Mit der Methode strftime(format)
wird ein Objekt basierend auf dem vom Benutzer angegebenen Format in eine Zeichenkette konvertiert.
Für die Umkehrung dieses Prozesses wird die Methode strptime()
verwendet.
Der folgende Code verwendet die Methode strftime(format)
, um datetime in Python in eine Epoche umzuwandeln.
import datetime
ts = datetime.datetime(2019, 12, 1, 0, 0).strftime("%s")
print(ts)
Ausgabe:
1575158400
strftime(format)
bietet möglicherweise nicht immer die richtige Lösung. Diese Methode verwendet die Direktive %s
als Argument für strftime
, das Python nicht unterstützt. Es könnte funktionieren, weil Python %s
an die strftime
-Methode des Systems weiterleitet.
Diese Methode ist nicht die genaueste Methode zur Konvertierung von Datum und Uhrzeit in die Epoche. Es wird nicht empfohlen, diese Methode zu verwenden, nur weil es bessere und genauere Methoden gibt.
Verwenden Sie die Funktion timegm
, um DateTime in Python in Epoch zu konvertieren
Die Funktion timegm()
nimmt einen bestimmten Zeitwert und gibt den entsprechenden Unix-Zeitstempelwert zurück. Die Epoche wird als 1970 angenommen und die POSIX-Codierung wird angenommen. Die Funktionen time.gmtime()
und timegm()
sind umgekehrt.
Zur Verwendung dieser Funktionen müssen sowohl die Bibliothek calendar
als auch die Bibliothek time
in das Python-Programm importiert werden.
Das Modul calendar
bietet uns die Möglichkeit, Kalender und einige damit verbundene zusätzliche und nützliche Funktionen auszugeben.
Der folgende Code verwendet die Funktion timegm()
, um die Datums- und Uhrzeitangabe in eine Epoche umzuwandeln.
import datetime
import calendar
d = datetime.datetime(2019, 12, 1, 0, 0)
print(calendar.timegm(d.timetuple()))
Ausgabe:
1575158400
Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.
LinkedIn