logo

Python tidsmodul

I denne artikel vil vi diskutere tidsmodulet og forskellige funktioner, som dette modul tilbyder ved hjælp af gode eksempler.

Som navnet antyder, giver Python tidsmodulet mulighed for at arbejde med tiden Python . Det tillader funktionalitet som at få det aktuelle klokkeslæt, sætte programmet på pause i at køre osv. Så før vi starter med dette modul, skal vi importere det.



Import af tidsmodul

Tidsmodulet kommer med Pythons standard hjælpemodul, så det er ikke nødvendigt at installere det eksternt. Vi kan simpelthen importere det ved hjælp af importerklæring .

import time>

Hvad er epoke?

Epoken er det punkt, hvor tiden starter og er platformsafhængig. På Windows og de fleste Unix-systemer er epoken 1. januar 1970, 00:00:00 (UTC), og springsekunder tælles ikke med i tiden i sekunder siden epoken. For at kontrollere, hvad epoken er på en given platform, kan vi bruge time.gmtime(0) .

Eksempel: At få epoke



Koden brugertime>modul til at udskrive resultatet aftime.gmtime(0)>, som repræsenterer tiden i GMT-tidszonen (Greenwich Mean Time) i Unix-epoken (1. januar 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)

Bemærk: Tiden før epoken kan stadig repræsenteres i sekunder, men den vil være negativ. For eksempel vil 31. december 1969 blive repræsenteret som -86400 sekunder.

Henter aktuel tid i sekunder siden epoke

time.time() metoder returnerer den aktuelle tid i sekunder siden epoke. Det returnerer et floating-point tal.

Eksempel: Aktuel tid i sekunder siden epoke

Koden brugertime>modul til at hente den aktuelle tid i sekunder siden Unix-epoken (1. januar 1970).

Python3




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

>

>

Produktion

Current time in seconds since epoch = 1627908387.764925>

Henter tidsstreng fra sekunder

time.ctime() funktion returnerer en tidsstreng på 24 tegn, men tager sekunder som argument og beregner tiden indtil nævnte sekunder. Hvis intet argument passeres, beregnes tiden indtil nutiden.

Eksempel: Henter tidsstreng fra sekunder

Koden brugertime>modul til at konvertere et specificeret tidsstempel (1627908313.717886) til et menneskelæsbart dato- og tidsformat.

Python3




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

>

>

Produktion

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

Forsinke udførelse af programmer

Udførelse kan forsinkes vha time.sleep() metode. Denne metode bruges til at standse programafviklingen i den tid, der er angivet i argumenterne.

Eksempel: Forsinkelse af eksekvering af programmer i Python.

Denne kode brugertime>modul til at indføre en forsinkelse på et sekund ved hjælp af time.sleep(1)> inde i en løkke, der itererer fire gange.

Python3




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

>

>

Produktion

0 1 2 3>

time.struct_time Klasse

Struktur_tid klasse hjælper med at få adgang til lokal tid, dvs. ikke-epoke tidsstempler. Det returnerer en navngivet tuple, hvis værdi kan tilgås af både indeks og attributnavn. Dens objekt indeholder følgende attributter –

Indeks Attributnavn Værdier
0 tm_år 0000, …, 9999
1 tm_mon 1, 2, …, 11, 12
2 tm_mday 1, 2, …, 30, 31
3 tm_time 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øndag er 6
7 tm_yday 1, 2, …, 365, 366
8 tm_isdst 0, 1 eller -1

Denne klasse indeholder forskellige funktioner. Lad os diskutere hver funktion i detaljer.

time.localtime() metode

lokal tid() metoden returnerer struct_time-objektet i lokal tid. Det tager antallet af sekunder, der er gået siden epoke, som et argument. Hvis parameteren sekunder ikke er givet, bruges den aktuelle tid returneret af time.time() metoden.

Eksempel: Få lokal tid fra epoke

Koden brugertime>modul til at konvertere et specificeret tidsstempel (1627987508.6496193) til et time.struct_time> objekt, der repræsenterer den tilsvarende dato og klokkeslæt.

ms word hurtig adgang værktøjslinje

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

time.mktime() er den omvendte funktion af time.localtime(), som konverterer tiden udtrykt i sekunder siden epoken til et time.struct_time-objekt i lokal tid.

Eksempel: Konvertering af struct_time objekt til sekunder siden epoke

Denne kode bruger førsttime>modul til at konvertere et specificeret tidsstempel (1627987508.6496193) til et time.struct_time> objekt i GMT-tidszonen (Greenwich Mean Time) vha time.gmtime()> . Så bruger den time.mktime()> at konvertere dette time.struct_time> objekt tilbage i et tidsstempel.

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

time.gmtime() bruges til at konvertere en tid udtrykt i sekunder siden epoken til et time.struct_time-objekt i UTC, hvor attributten tm_isdst altid er 0. Hvis parameteren sekunder ikke er angivet, bruges den aktuelle tid returneret af time.time()-metoden.

Eksempel: Anvendelse af time.gmtime() metode

Koden brugertime>modul til at konvertere et specificeret tidsstempel (1627987508.6496193) til et time.struct_time> objekt, der repræsenterer den tilsvarende dato og 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() metode

time.strftime() funktion konverterer en tuple eller struct_time, der repræsenterer en tid som returneret af gmtime() eller localtime() til en streng som angivet af formatargumentet. Hvis t ikke er angivet, bruges den aktuelle tid som returneret af localtime(). Formatet skal være en streng. ValueError hæves, hvis et felt i t er uden for det tilladte interval.

Eksempel: Konvertering struct_time objekt til en streng ved hjælp af strftime()-metoden

Koden bruger gmtime> funktion fratime>modul til at konvertere et specificeret tidsstempel (1627987508.6496193) til en formateret streng vha.strftime>. Outputtet repræsenterer datoen og klokkeslættet i GMT-tidszonen (Greenwich Mean Time) i det format, der er angivet af formatstrengen.

Python3




1 til 100 romersk nr
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() metode

time.asctime() metode bruges til at konvertere en tuple eller et time.struct_time-objekt, der repræsenterer en tid som returneret af time.gmtime()- eller time.localtime()-metoden til en streng med følgende form:

Day Mon Date Hour:Min:Sec Year>

Eksempel: Konvertering af tuple til time.struct_time objekt til streng

Denne kode brugertime>modul til at konvertere et specificeret tidsstempel (1627987508.6496193) til et menneske-læsbart dato- og tidsformat ved hjælp af time.asctime()> . Det gør det både for GMT-tidszonen (Greenwich Mean Time) og den lokale tidszone.

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

time.strptime()-metoden konverterer strengen, der repræsenterer tid, til struct_time-objektet.

Eksempel: Konvertering af streng til struct_time objekt.

Denne kode brugertime>modul til at parse en formateret streng, der repræsenterer en dato og tid og konvertere den til en time.struct_time> objekt. Dettime.strptime()>funktion bruges til dette formå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)