Tässä artikkelissa tutkitaan aikamoduulia yksityiskohtaisesti. Opimme käyttämään erilaisia aikamoduulissa määriteltyjä aikatoimintoja esimerkkien avulla.
Pythonilla on nimetty moduuli, time
joka käsittelee aikaan liittyvät tehtävät. Jotta voisimme käyttää moduulissa määriteltyjä toimintoja, meidän on ensin tuotava moduuli. Näin:
import time
Tässä on yleisesti käytettyjä aikatoimintoja.
Python time.time ()
time()
Funktio palauttaa monta sekuntia kulunut epookki.
Unix-järjestelmä, January 1, 1970, 00:00:00
kello UTC on aikakausi (vaihe, jossa aika alkaa).
import time seconds = time.time() print("Seconds since epoch =", seconds)
Python time.ctime ()
time.ctime()
Toiminto kestää sekunnin kulunut epookki argumenttina ja palauttaa merkkijonon, joka edustaa paikallista aikaa.
import time # seconds passed since epoch seconds = 1545925769.9618232 local_time = time.ctime(seconds) print("Local time:", local_time)
Jos suoritat ohjelmaa, tulos on jotain:
Paikallinen aika: to 27. joulukuuta 15:49:29 2018
Python time.sleep ()
sleep()
Toiminto Pysäytykset (viiveet) suorittamista, langan annettu määrä sekuntia.
import time print("This is printed immediately.") time.sleep(2.4) print("This is printed after 2.4 seconds.")
Lisätietoja on osoitteessa Python sleep ().
Ennen kuin puhumme muista aikaan liittyvistä toiminnoista, tutkitaan time.struct_time
luokkaa lyhyesti.
time.struct_time-luokka
Useita toimintoja time
moduuli, kuten gmtime()
, asctime()
jne. Joko ottaa time.struct_time
esine argumenttina tai palauttaa sen.
Tässä on esimerkki time.struct_time
esineestä.
time.struct_time (tm_vuosi = 2018, tm_mon = 12, tm_mday = 27, tm_hour = 6, tm_min = 35, tm_sek = 17, tm_wday = 3, tm_yday = 361, tm_isdst = 0)
Indeksi | Attribuutti | Arvot |
---|---|---|
0 | tm_year | 0000,…., 2018,…, 9999 |
1 | tm_mon | 1, 2,…, 12 |
2 | tm_mday | 1, 2,…, 31 |
3 | tm_hour | 0, 1,…, 23 |
4 | tm_min | 0, 1,…, 59 |
5 | tm_sec | 0, 1,…, 61 |
6 | tm_wday | 0, 1,…, 6; Maanantai on 0 |
7 | tm_yday | 1, 2,…, 366 |
8 | tm_isdst | 0, 1 tai -1 |
Kohteen arvoihin (elementteihin) time.struct_time
pääsee käsiksi sekä indekseillä että attribuuteilla.
Python time.localtime ()
localtime()
Toiminto ottaa monta sekuntia kulunut epookki perusteena ja palaa struct_time
sisään paikallista aikaa .
import time result = time.localtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour)
Kun suoritat ohjelmaa, tulos on jotain:
tulos: time.struct_time (tm_vuosi = 2018, tm_mon = 12, tm_mday = 27, tm_hour = 15, tm_min = 49, tm_sek = 29, tm_wday = 3, tm_yday = 361, tm_isdst = 0) vuosi: 2018 tm_hour: 15
Jos argumenttia None
ei välitetä tai sille välitetään localtime()
, käytetään palauttamaa arvoa time()
.
Python time.gmtime ()
gmtime()
Toiminto ottaa monta sekuntia kulunut epookki perusteena ja palaa struct_time
sisään UTC .
import time result = time.gmtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour)
Kun suoritat ohjelmaa, tulos on:
tulos = aika.rakenne_aika (tm_vuosi = 2018, tm_mon = 12, tm_mday = 28, tm_hour = 8, tm_min = 44, tm_sek = 4, tm_wday = 4, tm_yday = 362, tm_isdst = 0) vuosi = 2018 tm_hour = 8
Jos argumenttia None
ei välitetä tai sille välitetään gmtime()
, käytetään palauttamaa arvoa time()
.
Python time.mktime ()
mktime()
Toiminto ottaa struct_time
(tai monikon, joka sisältää 9 osia vastaavat struct_time
) argumentiksi ja palauttaa sekuntia kulunut aikakauden paikallista aikaa. Pohjimmiltaan se on käänteinen funktio localtime()
.
import time t = (2018, 12, 28, 8, 44, 4, 4, 362, 0) local_time = time.mktime(t) print("Local time:", local_time)
Alla oleva esimerkki osoittaa, miten mktime()
ja miten localtime()
ne liittyvät toisiinsa.
import time seconds = 1545925769 # returns struct_time t = time.localtime(seconds) print("t1: ", t) # returns seconds from struct_time s = time.mktime(t) print("s:", seconds)
When you run the program, the output will be something like:
t1: time.struct_time(tm_year=2018, tm_mon=12, tm_mday=27, tm_hour=15, tm_min=49, tm_sec=29, tm_wday=3, tm_yday=361, tm_isdst=0) s: 1545925769.0
Python time.asctime()
The asctime()
function takes struct_time
(or a tuple containing 9 elements corresponding to struct_time
) as an argument and returns a string representing it. Here's an example:
import time t = (2018, 12, 28, 8, 44, 4, 4, 362, 0) result = time.asctime(t) print("Result:", result)
When you run the program, the output will be:
Result: Fri Dec 28 08:44:04 2018
Python time.strftime()
The strftime()
function takes struct_time
(or tuple corresponding to it) as an argument and returns a string representing it based on the format code used. For example,
import time named_tuple = time.localtime() # get struct_time time_string = time.strftime("%m/%d/%Y, %H:%M:%S", named_tuple) print(time_string)
When you run the program, the output will be something like:
12/28/2018, 09:47:41
Here, %Y
, %m
, %d
, %H
etc. are format codes.
%Y
- year (0001,… , 2018, 2019,… , 9999)%m
- kuukausi (01, 02,…, 11, 12)%d
- päivä (01, 02,…, 30, 31)%H
- tunti (00, 01,…, 22, 23%M
- minuuttia (00, 01,…, 58, 59)%S
- toinen (00, 01,…, 58, 61)
Lisätietoja on osoitteessa time.strftime ().
Python time.strptime ()
strptime()
Toiminto jäsentää merkkijono edustava kello palaa struct_time
.
import time time_string = "21 June, 2018" result = time.strptime(time_string, "%d %B, %Y") print(result)
Kun suoritat ohjelmaa, tulos on:
time.struct_time (tm_vuosi = 2018, tm_mon = 6, tm_mday = 21, tm_hour = 0, tm_min = 0, tm_sek = 0, tm_wday = 3, tm_yday = 172, tm_isdst = -1)