logo

Python-Zeitmodul

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)