In diesem Artikel besprechen wir das Zeitmodul und die verschiedenen Funktionen, die dieses Modul bietet, anhand guter Beispiele.
Wie der Name schon sagt, ermöglicht das Python-Zeitmodul die Arbeit mit der Zeit Python . Es ermöglicht Funktionen wie das Abrufen der aktuellen Uhrzeit, das Anhalten der Programmausführung usw. Bevor wir also mit diesem Modul beginnen, müssen wir es importieren.
Zeitmodul importieren
Das Zeitmodul wird mit dem Standard-Dienstprogrammmodul von Python geliefert, sodass keine externe Installation erforderlich ist. Wir können es einfach mit importieren Import-Anweisung .
import time>
Was ist Epoche?
Die Epoche ist der Punkt, an dem die Zeit beginnt, und ist plattformabhängig. Auf Windows- und den meisten Unix-Systemen ist die Epoche der 1. Januar 1970, 00:00:00 (UTC), und Schaltsekunden werden nicht auf die Zeit in Sekunden seit der Epoche angerechnet. Um zu überprüfen, wie die Epoche auf einer bestimmten Plattform ist, können wir sie verwenden time.gmtime(0) .
Beispiel: Epoche bekommen
Der Code verwendet dietime>
Modul zum Drucken des Ergebnissestime.gmtime(0)>
, die die Zeit in der GMT-Zeitzone (Greenwich Mean Time) zur Unix-Epoche darstellt (1. Januar 1970, 00:00:00 UTC).
Python3
import> time> print> (time.gmtime(> 0> ))> |
>
>
Ausgabe:
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)
Notiz: Die Zeit vor der Epoche kann immer noch in Sekunden dargestellt werden, sie wird jedoch negativ sein. Beispielsweise wird der 31. Dezember 1969 als -86400 Sekunden dargestellt.
Aktuelle Zeit in Sekunden seit der Epoche abrufen
Zeit Zeit() Methoden geben die aktuelle Zeit in Sekunden seit der Epoche zurück. Es gibt eine Gleitkommazahl zurück.
Beispiel: Aktuelle Zeit in Sekunden seit der Epoche
Der Code verwendet dietime>
Modul zum Abrufen der aktuellen Zeit in Sekunden seit der Unix-Epoche (1. Januar 1970).
Python3
import> time> curr> => time.time()> print> (> 'Current time in seconds since epoch ='> , curr)> |
>
>Ausgabe
Current time in seconds since epoch = 1627908387.764925>
Zeitzeichenfolge aus Sekunden abrufen
time.ctime() Die Funktion gibt eine 24-stellige Zeitzeichenfolge zurück, verwendet jedoch Sekunden als Argument und berechnet die Zeit bis zu den genannten Sekunden. Wenn kein Argument übergeben wird, wird die Zeit bis zur Gegenwart berechnet.
Beispiel: Zeitzeichenfolge aus Sekunden abrufen
Der Code verwendet dietime>
Modul zum Konvertieren eines angegebenen Zeitstempels (1627908313.717886) in ein für Menschen lesbares Datums- und Uhrzeitformat.
Python3
import> time> curr> => time.ctime(> 1627908313.717886> )> print> (> 'Current time:'> , curr)> |
>
>Ausgabe
Current time: Mon Aug 2 12:45:13 2021>
Verzögerung der Ausführung von Programmen
Die Ausführung kann verzögert werden time.sleep() Methode. Mit dieser Methode wird die Programmausführung für die in den Argumenten angegebene Zeit angehalten.
Beispiel: Verzögerung der Ausführungszeit von Programmen in Python.
Dieser Code verwendet dietime>
Modul zum Einführen einer Verzögerung von einer Sekunde mit time.sleep(1)>
innerhalb einer Schleife, die viermal wiederholt wird.
Python3
import> time> for> i> in> range> (> 4> ):> > time.sleep(> 1> )> > print> (i)> |
>
>Ausgabe
0 1 2 3>
time.struct_time-Klasse
Struct_time Die Klasse hilft beim Zugriff auf die lokale Zeit, d. h. auf nicht epochale Zeitstempel. Es gibt ein benanntes Tupel zurück, auf dessen Wert sowohl über den Index als auch über den Attributnamen zugegriffen werden kann. Sein Objekt enthält die folgenden Attribute:
Index | Attributname | Werte |
---|---|---|
0 | tm_year | 0000, …, 9999 |
1 | tm_mon | 1, 2, …, 11, 12 |
2 | tm_mday | 1, 2, …, 30, 31 |
3 | tm_hour | 0, 1, …, 22, 23 |
4 | tm_min | 0, 1, …, 58, 59 |
5 | tm_sec | 0, 1, …, 60, 61 |
6 | tm_wday | 0, 1, …, 6; Sonntag ist 6 |
7 | tm_yday | 1, 2, …, 365, 366 |
8 | tm_isdst | 0, 1 oder -1 |
Diese Klasse enthält verschiedene Funktionen. Lassen Sie uns jede Funktion im Detail besprechen.
time.localtime()-Methode
Ortszeit() Die Methode gibt das struct_time-Objekt in der Ortszeit zurück. Als Argument wird die Anzahl der seit der Epoche vergangenen Sekunden verwendet. Wenn der Sekundenparameter nicht angegeben ist, wird die aktuelle Zeit verwendet, die von der Methode time.time() zurückgegeben wird.
Beispiel: Lokale Zeit aus der Epoche abrufen
Der Code verwendet dietime>
Modul zum Konvertieren eines angegebenen Zeitstempels (1627987508.6496193) in einen time.struct_time>
Objekt, das das entsprechende Datum und die entsprechende Uhrzeit darstellt.
Selen-Tutorial Java
Python3
import> time> obj> => time.localtime(> 1627987508.6496193> )> print> (obj)> |
>
>
Ausgabe
time.struct_time(tm_year=2021, tm_mon=8, tm_mday=3, tm_hour=16, tm_min=15, tm_sec=8, tm_wday=1, tm_yday=215, tm_isdst=0)
time.mktime()-Methode
time.mktime() ist die Umkehrfunktion von time.localtime(), die die in Sekunden ausgedrückte Zeit seit der Epoche in ein time.struct_time-Objekt in Ortszeit umwandelt.
Beispiel: Konvertieren der struct_time Objekt zu Sekunden seit Epoche
Dieser Code verwendet zunächst dietime>
Modul zum Konvertieren eines angegebenen Zeitstempels (1627987508.6496193) in einen time.struct_time>
Objekt in der Zeitzone GMT (Greenwich Mean Time) verwenden time.gmtime()>
. Dann nutzt es time.mktime()>
um dies umzuwandeln time.struct_time>
Objekt zurück in einen Zeitstempel.
Python3
import> time> obj1> => time.gmtime(> 1627987508.6496193> )> time_sec> => time.mktime(obj1)> print> (> 'Local time (in seconds):'> , time_sec)> |
>
>Ausgabe
Local time (in seconds): 1627987508.0>
time.gmtime()-Methode
time.gmtime() wird verwendet, um eine in Sekunden seit der Epoche ausgedrückte Zeit in ein time.struct_time-Objekt in UTC umzuwandeln, in dem das tm_isdst-Attribut immer 0 ist. Wenn der Sekundenparameter nicht angegeben ist, wird die aktuelle Zeit verwendet, die von der Methode time.time() zurückgegeben wird.
Beispiel: Gebrauch von time.gmtime() Methode
Der Code verwendet dietime>
Modul zum Konvertieren eines angegebenen Zeitstempels (1627987508.6496193) in einen time.struct_time>
Objekt, das das entsprechende Datum und die entsprechende Uhrzeit in der Zeitzone GMT (Greenwich Mean Time) darstellt.
Python3
import> time> obj> => time.gmtime(> 1627987508.6496193> )> print> (obj)> |
>
>
Ausgabe
time.struct_time(tm_year=2021, tm_mon=8, tm_mday=3, tm_hour=10, tm_min=45, tm_sec=8, tm_wday=1, tm_yday=215, tm_isdst=0)
time.strftime()-Methode
time.strftime() Die Funktion konvertiert ein Tupel oder struct_time, das eine von gmtime() oder localtime() zurückgegebene Zeit darstellt, in eine Zeichenfolge, wie durch das Formatargument angegeben. Wenn t nicht angegeben wird, wird die aktuelle Zeit verwendet, wie sie von localtime() zurückgegeben wird. Das Format muss eine Zeichenfolge sein. ValueError wird ausgelöst, wenn ein Feld in t außerhalb des zulässigen Bereichs liegt.
Beispiel: Konvertieren struct_time Objekt mit der Methode strftime() in eine Zeichenfolge umwandeln
Der Code verwendet die gmtime>
Funktion aus demtime>
Modul zum Konvertieren eines angegebenen Zeitstempels (1627987508.6496193) in eine formatierte Zeichenfolge mitstrftime>
. Die Ausgabe stellt das Datum und die Uhrzeit in der GMT-Zeitzone (Greenwich Mean Time) in dem durch die Formatzeichenfolge angegebenen Format dar.
Python3
Was ist obj in Java?
from> time> import> gmtime, strftime> s> => strftime(> '%a, %d %b %Y %H:%M:%S'> ,> > gmtime(> 1627987508.6496193> ))> print> (s)> |
>
>Ausgabe
Tue, 03 Aug 2021 10:45:08>
time.asctime()-Methode
time.asctime() Die Methode wird verwendet, um ein Tupel oder ein time.struct_time-Objekt, das eine von der Methode time.gmtime() oder time.localtime() zurückgegebene Zeit darstellt, in eine Zeichenfolge der folgenden Form zu konvertieren:
Day Mon Date Hour:Min:Sec Year>
Beispiel: Konvertieren eines Tupels in ein time.struct_time-Objekt in einen String
Dieser Code verwendet dietime>
Modul zum Konvertieren eines angegebenen Zeitstempels (1627987508.6496193) in ein für Menschen lesbares Datums- und Uhrzeitformat time.asctime()>
. Dies gilt sowohl für die Zeitzone GMT (Greenwich Mean Time) als auch für die lokale Zeitzone.
Python3
import> time> obj> => time.gmtime(> 1627987508.6496193> )> time_str> => time.asctime(obj)> print> (time_str)> obj> => time.localtime(> 1627987508.6496193> )> time_str> => time.asctime(obj)> print> (time_str)> |
>
>Ausgabe
Tue Aug 3 10:45:08 2021 Tue Aug 3 10:45:08 2021>
time.strptime()-Methode
Die Methode time.strptime() konvertiert die Zeichenfolge, die die Zeit darstellt, in das Objekt struct_time.
Beispiel: String konvertieren in struct_time Objekt.
Dieser Code verwendet dietime>
Modul zum Analysieren einer formatierten Zeichenfolge, die ein Datum und eine Uhrzeit darstellt, und zum Konvertieren in eine time.struct_time>
Objekt. Dertime.strptime()>
Zu diesem Zweck wird die Funktion verwendet.
Python3
import> time> string> => 'Tue, 03 Aug 2021 10:45:08'> obj> => time.strptime(string,> '%a, %d %b %Y %H:%M:%S'> )> print> (obj)> |
>
>
Ausgabe
time.struct_time(tm_year=2021, tm_mon=8, tm_mday=3, tm_hour=10, tm_min=45, tm_sec=8, tm_wday=1, tm_yday=215, tm_isdst=-1)