Python - Modul time
Python ima modul pod nazivom time za rješavanje zadataka povezanih s vremenom. Za korištenje funkcija definisanih u modulu, prvo moramo uvesti modul. Pogledajmo kako:
import time
Ovdje se obično koriste funkcije povezane s vremenom.
Python time.time()
Funkcija time() vraća broj sekundi proteklih od epohe. Za Unix sistem, 1. januar 1970. 00:00:00 u UTC je epoha (tačka u kojoj vrijeme počinje).
import time
seconds = time.time()
print("Epoha =", seconds)
Python time.ctime()
Funkcija time.ctime() uzima sekunde od epohe kao argument i vraća string koji predstavlja lokalno vrijeme.
import time
# Sekunde su prošle od epohe
seconds = 1625925769.9618232
local_time = time.ctime(seconds)
print("Lokalno vrijeme:", local_time)
Python time.sleep()
Funkcija sleep() obustavlja (odgađa) izvršavanje trenutne niti na zadani broj sekundi.
import time
print("Ovo se odmah ispisuje.")
time.sleep(2.4)
print("Ovo se ispisuje nakon 2.4 sekunde.")
Python time.localtime()
Funkcija localtime() uzima broj sekundi proteklih od epohe kao argument i vraća struct_time po lokalnom vremenu.
import time
result = time.localtime(1625925769)
print("Rezultat:", result)
print("Godina:", result.tm_year)
print("Sati:", result.tm_hour)
Ako se localtime() ne prosljedi nikakav argument ili None, koristi se vrijednost vraćena od funkcije time().
Python time.gmtime()
Funkcija gmtime() uzima broj sekundi proteklih od epohe kao argument i vraća struct_time u UTC.
import time
result = time.gmtime(1625925769)
print("Rezultat:", result)
print("Godina:", result.tm_year)
print("Sati:", result.tm_hour)
Python time.mktime()
Funkcija mktime() uzima argument struct_time (ili tuple koji sadrži 9 elemenata koji odgovaraju struct_time) kao argument i vraća sekunde protekle od epohe po lokalnom vremenu. U osnovi, to je inverzna funkcija localtime().
import time
t = (2021, 9, 28, 8, 44, 4, 4, 362, 0)
local_time = time.mktime(t)
print("Lokalno vrijeme u sekundama:", local_time)
Primjer u nastavku pokazuje kako su mktime() i localtime() povezani.
import time
seconds = 1625925769
# Vraća struct_time
t = time.localtime(seconds)
print("t1: ", t)
# Vraća sekunde iz struct_time
s = time.mktime(t)
print("s:", seconds)
Python time.asctime()
Funkcija asctime() uzima kao argument struct_time (ili tuple koji sadrži 9 elemenata koji odgovaraju struct_time) i vraća string koji ga predstavlja. Pogledajmo primjer:
import time
t = (2021, 9, 28, 8, 44, 4, 4, 362, 0)
result = time.asctime(t)
print("Rezultat je:", result)
Python time.strftime()
Funkcija strftime() uzima struct_time (ili tuple koji joj odgovara) kao argument i vraća string koji je predstavlja na temelju korištenog koda formata. Pogledajmo primjer:
import time
named_tuple = time.localtime() # Dobijanje struct_time
time_string = time.strftime("%m/%d/%Y, %H:%M:%S", named_tuple)
print(time_string)
Ovdje su %Y, %m, %d, %H itd. formati koda.
- %Y - godina [0001,..., 2018, 2019,..., 9999]
- %m - mjesec [01, 02, ..., 11, 12]
- %d - dan [01, 02, ..., 30, 31]
- %H - sat [00, 01, ..., 22, 23
- %M - minute [00, 01, ..., 58, 59]
- %S - sekunde [00, 01, ..., 58, 61]
Da biste naučili više pogledajte lekciju time.strftime().
Python time.strptime()
Funkcija strptime() razčlanjuje string koji predstavlja vrijeme i vraća struct_time.
import time
time_string = "21 June, 2021"
result = time.strptime(time_string, "%d %B, %Y")
print(result)