I den här artikeln kommer vi att diskutera tidsmodulen och olika funktioner som denna modul tillhandahåller med hjälp av goda exempel.
Som namnet antyder tillåter Python-tidsmodulen att arbeta med tiden in Pytonorm . Det tillåter funktionalitet som att få aktuell tid, pausa programmet från att köras, etc. Så innan vi börjar med den här modulen måste vi importera den.
Importerar tidsmodul
Tidsmodulen kommer med Pythons standardverktygsmodul, så det finns inget behov av att installera den externt. Vi kan helt enkelt importera den med hjälp av importförklaring .
import time>
Vad är epok?
Epok är punkten där tiden börjar och är plattformsberoende. På Windows och de flesta Unix-system är epoken 1 januari 1970, 00:00:00 (UTC), och skottsekunder räknas inte mot tiden i sekunder sedan epoken. För att kontrollera vad epoken är på en given plattform kan vi använda time.gmtime(0) .
Exempel: Får epok
Koden användertime>
modul att skriva ut resultatet avtime.gmtime(0)>
, som representerar tiden i GMT-tidszonen (Greenwich Mean Time) vid Unix-epoken (1 januari 1970, 00:00:00 UTC).
Python3
import> time> print> (time.gmtime(> 0> ))> |
>
>
Produktion:
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)
Notera: Tiden före epoken kan fortfarande representeras i sekunder men den kommer att vara negativ. Till exempel kommer 31 december 1969 att representeras som -86400 sekunder.
Hämtar aktuell tid i sekunder sedan epok
time.time() metoder returnerar den aktuella tiden i sekunder sedan epok. Den returnerar ett flyttal.
Exempel: Aktuell tid i sekunder sedan epok
Koden användertime>
modul för att hämta den aktuella tiden i sekunder sedan Unix-epoken (1 januari 1970).
Python3
import> time> curr> => time.time()> print> (> 'Current time in seconds since epoch ='> , curr)> |
>
>Produktion
Current time in seconds since epoch = 1627908387.764925>
Får tidssträng från sekunder
time.ctime() funktionen returnerar en tidssträng på 24 tecken men tar sekunder som argument och beräknar tiden till nämnda sekunder. Om inget argument passeras, beräknas tiden till nutid.
Exempel: Får tidssträng från sekunder
Koden användertime>
modul för att konvertera en specificerad tidsstämpel (1627908313.717886) till ett läsbart datum- och tidsformat.
Python3
import> time> curr> => time.ctime(> 1627908313.717886> )> print> (> 'Current time:'> , curr)> |
>
>Produktion
Current time: Mon Aug 2 12:45:13 2021>
Att fördröja exekvering av program
Utförande kan försenas med hjälp av time.sleep() metod. Denna metod används för att stoppa programexekveringen under den tid som anges i argumenten.
Exempel: Fördröjning av körningstid för program i Python.
Denna kod användertime>
modul för att införa en fördröjning på en sekund med hjälp av time.sleep(1)>
inuti en slinga som itererar fyra gånger.
Python3
import> time> for> i> in> range> (> 4> ):> > time.sleep(> 1> )> > print> (i)> |
>
>Produktion
0 1 2 3>
time.struct_time Klass
Struktur_tid klass hjälper till att komma åt lokal tid, dvs icke-epokala tidsstämplar. Den returnerar en namngiven tupel vars värde kan nås av både index och attributnamn. Dess objekt innehåller följande attribut –
Index | Attributnamn | Värderingar |
---|---|---|
0 | tm_år | 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_sek | 0, 1, …, 60, 61 |
6 | tm_wday | 0, 1, …, 6; Söndagen är 6 |
7 | tm_yday | 1, 2, …, 365, 366 |
8 | tm_isdst | 0, 1 eller -1 |
Denna klass innehåller olika funktioner. Låt oss diskutera varje funktion i detalj.
time.localtime() metod
lokal tid() metod returnerar objektet struct_time i lokal tid. Det tar antalet sekunder som gått sedan epok som ett argument. Om parametern seconds inte anges används den aktuella tiden som returneras av metoden time.time().
Exempel: Få lokal tid från epok
Koden användertime>
modul för att konvertera en specificerad tidsstämpel (1627987508.6496193) till en time.struct_time>
objekt som representerar motsvarande datum och tid.
dfa automata exempel
Python3
import> time> obj> => time.localtime(> 1627987508.6496193> )> print> (obj)> |
>
>
Produktion
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() metod
time.mktime() är den inversa funktionen av time.localtime() som omvandlar tiden uttryckt i sekunder sedan epoken till ett time.struct_time-objekt i lokal tid.
Exempel: Konvertera struct_time invända mot sekunder sedan epok
Denna kod använder försttime>
modul för att konvertera en specificerad tidsstämpel (1627987508.6496193) till en time.struct_time>
objekt i GMT-tidszonen (Greenwich Mean Time) med hjälp av time.gmtime()>
. Sedan använder den time.mktime()>
att konvertera detta time.struct_time>
objektet tillbaka till en tidsstämpel.
Python3
import> time> obj1> => time.gmtime(> 1627987508.6496193> )> time_sec> => time.mktime(obj1)> print> (> 'Local time (in seconds):'> , time_sec)> |
>
>Produktion
Local time (in seconds): 1627987508.0>
time.gmtime() metod
time.gmtime() används för att konvertera en tid uttryckt i sekunder sedan epoken till ett time.struct_time-objekt i UTC där attributet tm_isdst alltid är 0. Om parametern seconds inte anges används den aktuella tiden som returneras av time.time()-metoden.
Exempel: Användning av time.gmtime() metod
Koden användertime>
modul för att konvertera en specificerad tidsstämpel (1627987508.6496193) till en time.struct_time>
objekt som representerar motsvarande datum och tid i GMT-tidszonen (Greenwich Mean Time).
Python3
import> time> obj> => time.gmtime(> 1627987508.6496193> )> print> (obj)> |
>
>
Produktion
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() metod
time.strftime() funktion konverterar en tupel eller struct_time som representerar en tid som returneras av gmtime() eller localtime() till en sträng som specificeras av formatargumentet. Om t inte anges används den aktuella tiden som returneras av localtime(). Formatet måste vara en sträng. ValueError höjs om något fält i t ligger utanför det tillåtna intervallet.
Exempel: Konverterar struct_time objekt till en sträng med metoden strftime().
Koden använder gmtime>
funktion fråntime>
modul för att konvertera en specificerad tidsstämpel (1627987508.6496193) till en formaterad sträng medstrftime>
. Utdata representerar datum och tid i GMT-tidszonen (Greenwich Mean Time) i det format som anges av formatsträngen.
Python3
parseint java
from> time> import> gmtime, strftime> s> => strftime(> '%a, %d %b %Y %H:%M:%S'> ,> > gmtime(> 1627987508.6496193> ))> print> (s)> |
>
>Produktion
Tue, 03 Aug 2021 10:45:08>
time.asctime() metod
time.asctime() metod används för att konvertera en tupel eller ett time.struct_time-objekt som representerar en tid som returneras av metoden time.gmtime() eller time.localtime() till en sträng av följande form:
Day Mon Date Hour:Min:Sec Year>
Exempel: Konverterar tuple till time.struct_time-objekt till sträng
Denna kod användertime>
modul för att konvertera en specificerad tidsstämpel (1627987508.6496193) till ett av människor läsbart datum- och tidsformat med time.asctime()>
. Det gör det både för GMT-tidszonen (Greenwich Mean Time) och den lokala tidszonen.
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)> |
>
>Produktion
Tue Aug 3 10:45:08 2021 Tue Aug 3 10:45:08 2021>
time.strptime() metod
metoden time.strptime() konverterar strängen som representerar tid till objektet struct_time.
Exempel: Konverterar sträng till struct_time objekt.
Denna kod användertime>
modul för att analysera en formaterad sträng som representerar ett datum och en tid och konvertera den till en time.struct_time>
objekt. Detime.strptime()>
funktionen används för detta ändamål.
Python3
import> time> string> => 'Tue, 03 Aug 2021 10:45:08'> obj> => time.strptime(string,> '%a, %d %b %Y %H:%M:%S'> )> print> (obj)> |
>
>
Produktion
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)