logo

Python-tijdmodule

In dit artikel bespreken we aan de hand van goede voorbeelden de tijdmodule en de verschillende functies die deze module biedt.

Zoals de naam al doet vermoeden, maakt de Python-tijdmodule het mogelijk om met de tijd te werken Python . Het maakt functionaliteit mogelijk zoals het verkrijgen van de huidige tijd, het pauzeren van de uitvoering van het programma, enz. Voordat we met deze module beginnen, moeten we deze dus importeren.



Tijdmodule importeren

De tijdmodule wordt geleverd met de standaard hulpprogrammamodule van Python, dus u hoeft deze niet extern te installeren. We kunnen het eenvoudig importeren met behulp van de importverklaring .

import time>

Wat is tijdperk?

Het tijdperk is het punt waarop de tijd begint en is platformafhankelijk. Op Windows en de meeste Unix-systemen is het tijdperk 1 januari 1970, 00:00:00 (UTC), en schrikkelseconden worden niet meegeteld voor de tijd in seconden sinds het tijdperk. Om te controleren wat het tijdperk is op een bepaald platform kunnen we gebruiken tijd.gmtime(0) .

Voorbeeld: Tijdperk krijgen



De code maakt gebruik van detime>module waarvan u het resultaat wilt afdrukkentime.gmtime(0)>, die de tijd vertegenwoordigt in de GMT-tijdzone (Greenwich Mean Time) in het Unix-tijdperk (1 januari 1970, 00:00:00 UTC).

Python3






import> time> print>(time.gmtime(>0>))>

>

>

Uitgang:

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)

Opmerking: De tijd vóór het tijdperk kan nog steeds in seconden worden weergegeven, maar zal negatief zijn. 31 december 1969 wordt bijvoorbeeld weergegeven als -86400 seconden.

De huidige tijd ophalen in seconden sinds het tijdperk

tijd.tijd() methoden retourneren de huidige tijd in seconden sinds het tijdperk. Het retourneert een getal met drijvende komma.

Voorbeeld: Huidige tijd in seconden sinds tijdperk

De code maakt gebruik van detime>module om de huidige tijd in seconden op te halen sinds het Unix-tijdperk (1 januari 1970).

Python3




import> time> curr>=> time.time()> print>(>'Current time in seconds since epoch ='>, curr)>

>

>

Uitvoer

Current time in seconds since epoch = 1627908387.764925>

Tijdreeks ophalen uit seconden

tijd.ctime() functie retourneert een tijdreeks van 24 tekens, maar neemt seconden als argument en berekent de tijd tot de genoemde seconden. Als er geen argument wordt doorgegeven, wordt de tijd berekend tot het heden.

Voorbeeld: Tijdreeks ophalen uit seconden

De code maakt gebruik van detime>module om een ​​gespecificeerde tijdstempel (1627908313.717886) om te zetten in een voor mensen leesbaar datum- en tijdformaat.

Python3




import> time> curr>=> time.ctime(>1627908313.717886>)> print>(>'Current time:'>, curr)>

>

>

Uitvoer

Current time: Mon Aug 2 12:45:13 2021>

Vertraging van de uitvoering van programma's

De uitvoering kan worden uitgesteld met behulp van tijd.slaap() methode. Deze methode wordt gebruikt om de uitvoering van het programma te stoppen gedurende de tijd die is opgegeven in de argumenten.

Voorbeeld: Vertraging van de uitvoeringstijd van programma's in Python.

Deze code maakt gebruik van detime>module om een ​​vertraging van één seconde te introduceren time.sleep(1)> binnen een lus die vier keer wordt herhaald.

Python3




import> time> for> i>in> range>(>4>):> >time.sleep(>1>)> >print>(i)>

>

>

Uitvoer

0 1 2 3>

time.struct_time Klasse

Structuur_tijd klasse helpt toegang te krijgen tot lokale tijd, dat wil zeggen niet-epochale tijdstempels. Het retourneert een benoemde tuple waarvan de waarde toegankelijk is via zowel de index- als de attribuutnaam. Het object bevat de volgende attributen:

Inhoudsopgave attribuut naam Waarden
0 tm_jaar 0000, …, 9999
1 tm_mon 1, 2, …, 11, 12
2 tm_mdag 1, 2, …, 30, 31
3 tm_uur 0, 1, …, 22, 23
4 tm_min 0, 1, …, 58, 59
5 tm_sec 0, 1, …, 60, 61
6 tm_wdag 0, 1, …, 6; Zondag is 6
7 tm_yday 1, 2, …, 365, 366
8 tm_isdst 0, 1 of -1

Deze klasse bevat verschillende functies. Laten we elke functie in detail bespreken.

time.localtime() methode

lokale tijd() methode retourneert het object struct_time in lokale tijd. Als argument wordt het aantal seconden sinds epoche gebruikt. Als de parameter seconden niet wordt opgegeven, wordt de huidige tijd gebruikt die wordt geretourneerd door de methode time.time().

Voorbeeld: Lokale tijd uit tijdperk halen

De code maakt gebruik van detime>module om een ​​opgegeven tijdstempel (1627987508.6496193) om te zetten in een time.struct_time> object dat de overeenkomstige datum en tijd vertegenwoordigt.

converteer een Java-object naar json

Python3




import> time> obj>=> time.localtime(>1627987508.6496193>)> print>(obj)>

>

>

Uitvoer

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

tijd.mktime() is de inverse functie van time.localtime() die de tijd uitgedrukt in seconden sinds het tijdperk converteert naar een time.struct_time-object in lokale tijd.

Voorbeeld: Het converteren van de struct_tijd bezwaar maken tegen seconden sinds tijdperk

Deze code gebruikt eerst detime>module om een ​​opgegeven tijdstempel (1627987508.6496193) om te zetten in een time.struct_time> object in de GMT-tijdzone (Greenwich Mean Time) gebruikt time.gmtime()> . Vervolgens gebruikt het time.mktime()> om dit om te zetten time.struct_time> object terug in een tijdstempel.

Python3




import> time> obj1>=> time.gmtime(>1627987508.6496193>)> time_sec>=> time.mktime(obj1)> print>(>'Local time (in seconds):'>, time_sec)>

>

>

Uitvoer

Local time (in seconds): 1627987508.0>

time.gmtime() methode

tijd.gmtime() wordt gebruikt om een ​​tijd uitgedrukt in seconden sinds het tijdperk te converteren naar een time.struct_time object in UTC waarin het attribuut tm_isdst altijd 0 is. Als de parameter seconden niet wordt opgegeven, wordt de huidige tijd gebruikt die wordt geretourneerd door de methode time.time().

Voorbeeld: Gebruik van tijd.gmtime() methode

De code maakt gebruik van detime>module om een ​​opgegeven tijdstempel (1627987508.6496193) om te zetten in een time.struct_time> object dat de overeenkomstige datum en tijd in de GMT-tijdzone (Greenwich Mean Time) vertegenwoordigt.

Python3




import> time> obj>=> time.gmtime(>1627987508.6496193>)> print>(obj)>

>

>

Uitvoer

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

tijd.strftime() functie converteert een tuple of struct_time die een tijd vertegenwoordigt zoals geretourneerd door gmtime() of localtime() naar een string zoals gespecificeerd door het format-argument. Als t niet is opgegeven, wordt de huidige tijd gebruikt, zoals geretourneerd door localtime(). Het formaat moet een tekenreeks zijn. ValueError wordt gegenereerd als een veld in t buiten het toegestane bereik valt.

Voorbeeld: Converteren struct_tijd object naar een tekenreeks met behulp van de strftime()-methode

De code maakt gebruik van de gmtime> functie uit detime>module om een ​​gespecificeerde tijdstempel (1627987508.6496193) te converteren naar een opgemaakte string met behulp vanstrftime>. De uitvoer vertegenwoordigt de datum en tijd in de GMT-tijdzone (Greenwich Mean Time) in de notatie die is opgegeven door de notatiereeks.

Python3




erfenis java
from> time>import> gmtime, strftime> s>=> strftime(>'%a, %d %b %Y %H:%M:%S'>,> >gmtime(>1627987508.6496193>))> print>(s)>

>

>

Uitvoer

Tue, 03 Aug 2021 10:45:08>

time.asctime() methode

tijd.asctime() De methode wordt gebruikt om een ​​tuple of een time.struct_time-object dat een tijd vertegenwoordigt, zoals geretourneerd door de methode time.gmtime() of time.localtime(), te converteren naar een tekenreeks met de volgende vorm:

Day Mon Date Hour:Min:Sec Year>

Voorbeeld: Tuple converteren naar time.struct_time object naar string

Deze code maakt gebruik van detime>module om een ​​gespecificeerde tijdstempel (1627987508.6496193) om te zetten in een voor mensen leesbaar datum- en tijdformaat met behulp van time.asctime()> . Dit gebeurt zowel voor de GMT-tijdzone (Greenwich Mean Time) als voor de lokale tijdzone.

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)>

>

>

Uitvoer

Tue Aug 3 10:45:08 2021 Tue Aug 3 10:45:08 2021>

time.strptime() methode

time.strptime() methode converteert de string die tijd vertegenwoordigt naar het struct_time object.

Voorbeeld: Tekenreeks converteren naar struct_tijd voorwerp.

Deze code maakt gebruik van detime>module om een ​​opgemaakte string te parseren die een datum en tijd vertegenwoordigt en deze om te zetten in een time.struct_time> voorwerp. Detime.strptime()>Hiervoor wordt een functie gebruikt.

Python3




import> time> string>=> 'Tue, 03 Aug 2021 10:45:08'> obj>=> time.strptime(string,>'%a, %d %b %Y %H:%M:%S'>)> print>(obj)>

>

>

Uitvoer

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)