I denne artikkelen vil vi diskutere tidsmodulen og ulike funksjoner som tilbys av denne modulen ved hjelp av gode eksempler.
Som navnet antyder lar Python-tidsmodulen jobbe med tid inn Python . Den tillater funksjonalitet som å få gjeldende tid, sette programmet på pause fra å kjøre, osv. Så før vi begynner med denne modulen, må vi importere den.
Importerer tidsmodul
Tidsmodulen kommer med Pythons standard verktøymodul, så det er ikke nødvendig å installere den eksternt. Vi kan ganske enkelt importere den ved å bruke importerklæring .
import time>
Hva er epoke?
Epoken er punktet der tiden starter og er plattformavhengig. På Windows og de fleste Unix-systemer er epoken 1. januar 1970, 00:00:00 (UTC), og hoppsekunder regnes ikke med tiden i sekunder siden epoken. For å sjekke hva epoken er på en gitt plattform kan vi bruke time.gmtime(0) .
Eksempel: Får epoke
Koden brukertime>modul å skrive ut resultatet avtime.gmtime(0)>, som representerer tiden i GMT-tidssonen (Greenwich Mean Time) i Unix-epoken (1. januar 1970, 00:00:00 UTC).
Python3
import> time> print>(time.gmtime(>0>))> |
>
>
Produksjon:
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)
Merk: Tiden før epoken kan fortsatt representeres i sekunder, men den vil være negativ. For eksempel vil 31. desember 1969 bli representert som -86400 sekunder.
Henter gjeldende tid i sekunder siden epoke
time.time() metoder returnerer gjeldende tid i sekunder siden epoke. Det returnerer et flyttall.
Eksempel: Gjeldende tid i sekunder siden epoke
Koden brukertime>modul for å hente gjeldende tid i sekunder siden Unix-epoken (1. januar 1970).
Python3
import> time> curr>=> time.time()> print>(>'Current time in seconds since epoch ='>, curr)> |
>
>Produksjon
Current time in seconds since epoch = 1627908387.764925>
Henter tidsstreng fra sekunder
time.ctime() funksjonen returnerer en tidsstreng på 24 tegn, men tar sekunder som argument og beregner tiden til nevnte sekunder. Hvis ingen argumenter passeres, beregnes tiden til nåtiden.
Eksempel: Henter tidsstreng fra sekunder
Koden brukertime>modul for å konvertere et spesifisert tidsstempel (1627908313.717886) til et menneskelesbart dato- og klokkeslettformat.
Python3
import> time> curr>=> time.ctime(>1627908313.717886>)> print>(>'Current time:'>, curr)> |
>
>Produksjon
Current time: Mon Aug 2 12:45:13 2021>
Utsettelse av kjøring av programmer
Utførelse kan forsinkes ved hjelp av time.sleep() metode. Denne metoden brukes til å stoppe programkjøringen i den tiden som er spesifisert i argumentene.
Eksempel: Utsettelse av utføringstid for programmer i Python.
Denne koden brukertime>modul for å innføre en forsinkelse på ett sekund ved å bruke time.sleep(1)> inne i en løkke som itererer fire ganger.
Python3
import> time> for> i>in> range>(>4>):> >time.sleep(>1>)> >print>(i)> |
>
>Produksjon
0 1 2 3>
time.struct_time Klasse
Struktur_tid klasse hjelper deg med å få tilgang til lokal tid, dvs. ikke-epoke tidsstempler. Den returnerer en navngitt tuppel hvis verdi kan nås med både indeks og attributtnavn. Objektet inneholder følgende attributter -
| Indeks | Attributtnavn | Verdier |
|---|---|---|
| 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 klassen inneholder ulike funksjoner. La oss diskutere hver funksjon i detalj.
time.localtime()-metoden
lokal tid() metoden returnerer struct_time-objektet i lokal tid. Det tar antall sekunder som har gått siden epoken som argument. Hvis sekunder-parameteren ikke er gitt, brukes gjeldende tid returnert av time.time()-metoden.
Eksempel: Få lokal tid fra epoke
Koden brukertime>modul for å konvertere et spesifisert tidsstempel (1627987508.6496193) til et time.struct_time> objekt som representerer den tilsvarende datoen og klokkeslettet.
java boolsk streng
Python3
import> time> obj>=> time.localtime(>1627987508.6496193>)> print>(obj)> |
>
>
Produksjon
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()-metoden
time.mktime() er den inverse funksjonen til time.localtime() som konverterer tiden uttrykt i sekunder siden epoken til et time.struct_time-objekt i lokal tid.
Eksempel: Konvertering av struct_time objekt til sekunder siden epoken
Denne koden bruker førsttime>modul for å konvertere et spesifisert tidsstempel (1627987508.6496193) til et time.struct_time> objekt i GMT (Greenwich Mean Time) tidssone ved hjelp av time.gmtime()> . Deretter bruker den time.mktime()> å konvertere dette time.struct_time> objekt tilbake til et tidsstempel.
Python3
import> time> obj1>=> time.gmtime(>1627987508.6496193>)> time_sec>=> time.mktime(obj1)> print>(>'Local time (in seconds):'>, time_sec)> |
>
>Produksjon
Local time (in seconds): 1627987508.0>
time.gmtime()-metoden
time.gmtime() brukes til å konvertere en tid uttrykt i sekunder siden epoken til et time.struct_time-objekt i UTC der attributtet tm_isdst alltid er 0. Hvis parameteren sekunder ikke er gitt, brukes den gjeldende tiden returnert av time.time()-metoden.
Eksempel: Bruken av time.gmtime() metode
Koden brukertime>modul for å konvertere et spesifisert tidsstempel (1627987508.6496193) til et time.struct_time> objekt som representerer den tilsvarende datoen og klokkeslettet i GMT-tidssonen (Greenwich Mean Time).
Python3
import> time> obj>=> time.gmtime(>1627987508.6496193>)> print>(obj)> |
>
>
Produksjon
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()-metoden
time.strftime() funksjonen konverterer en tuppel eller struct_time som representerer en tid som returneres av gmtime() eller localtime() til en streng som spesifisert av formatargumentet. Hvis t ikke er oppgitt, brukes gjeldende tid som returnert av localtime(). Formatet må være en streng. ValueError økes hvis et felt i t er utenfor det tillatte området.
Eksempel: Konvertering struct_time objekt til en streng ved å bruke strftime()-metoden
Koden bruker gmtime> funksjon fratime>modul for å konvertere et spesifisert tidsstempel (1627987508.6496193) til en formatert streng ved å brukestrftime>. Utdataene representerer datoen og klokkeslettet i GMT-tidssonen (Greenwich Mean Time) i formatet spesifisert av 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)> |
>
>Produksjon
Tue, 03 Aug 2021 10:45:08>
time.asctime()-metoden
time.asctime() metoden brukes til å konvertere en tuppel eller et time.struct_time-objekt som representerer en tid som returneres av time.gmtime()- eller time.localtime()-metoden til en streng med følgende form:
Day Mon Date Hour:Min:Sec Year>
Eksempel: Konverterer tuple til time.struct_time-objekt til streng
Denne koden brukertime>modul for å konvertere et spesifisert tidsstempel (1627987508.6496193) til et menneskelesbart dato- og klokkeslettformat ved å bruke time.asctime()> . Det gjør det både for GMT-tidssonen (Greenwich Mean Time) og den lokale tidssonen.
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)> |
>
>Produksjon
Tue Aug 3 10:45:08 2021 Tue Aug 3 10:45:08 2021>
time.strptime()-metoden
time.strptime()-metoden konverterer strengen som representerer tid til struct_time-objektet.
Eksempel: Konverterer streng til struct_time gjenstand.
Denne koden brukertime>modul for å analysere en formatert streng som representerer en dato og tid og konvertere den til en time.struct_time> gjenstand. Detime.strptime()>funksjonen brukes til dette formålet.
Python3
import> time> string>=> 'Tue, 03 Aug 2021 10:45:08'> obj>=> time.strptime(string,>'%a, %d %b %Y %H:%M:%S'>)> print>(obj)> |
>
>
Produksjon
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)