Časový modul Python (s príkladmi)

V tomto článku podrobne preskúmame časový modul. Naučíme sa používať rôzne časovo súvisiace funkcie definované v časovom module pomocou príkladov.

Python má modul pomenovaný timena spracovanie úloh súvisiacich s časom. Aby sme mohli používať funkcie definované v module, musíme najskôr importovať modul. Tu je postup:

 import time

Tu sú bežne používané funkcie súvisiace s časom.

Python time.time ()

Tieto time()funkcie vráti počet sekúnd uplynulo od epochy.

Pre unixový systém je January 1, 1970, 00:00:00v UTC epocha (bod, kde začína čas).

 import time seconds = time.time() print("Seconds since epoch =", seconds) 

Python time.ctime ()

time.ctime()Funkcia trvá len pár sekúnd uplynulo od epochy ako argument a vráti reťazec predstavujúci miestneho času.

 import time # seconds passed since epoch seconds = 1545925769.9618232 local_time = time.ctime(seconds) print("Local time:", local_time) 

Ak spustíte program, výstup bude asi ako:

 Miestny čas: út 27. decembra 15:49:29 2018

Python time.sleep ()

sleep()Funkcia visí (oneskorenie) vykonávanie aktuálne vlákno pre daný počet sekúnd.

 import time print("This is printed immediately.") time.sleep(2.4) print("This is printed after 2.4 seconds.") 

Ak sa chcete dozvedieť viac, navštívte stránku: Python sleep ().

Predtým, ako hovoríme o ďalších funkciách súvisiacich s časom, poďme si time.struct_timev skratke predstaviť triedu.

trieda time.struct_time

Niektoré funkcie v timemodule, ako je gmtime(), asctime()atď. A to buď sa time.struct_timeobjekt ako argument alebo ho.

Tu je príklad time.struct_timeobjektu.

 time.struct_time (tm_year = 2018, tm_mon = 12, tm_mday = 27, tm_hour = 6, tm_min = 35, tm_sec = 17, tm_wday = 3, tm_yday = 361, tm_isdst = 0) 
Register Atribút Hodnoty
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; Pondelok je 0
7 tm_yday 1, 2, …, 366
8 tm_isdst 0, 1 alebo -1

Hodnoty (prvky) time.struct_timeobjektu sú prístupné pomocou indexov aj atribútov.

Python time.localtime ()

localtime()Funkcia trvá počet sekúnd uplynulých od epochy ako argument a vracia sa struct_timedo miestneho času .

 import time result = time.localtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour) 

Keď spustíte program, výstup bude asi ako:

 výsledok: 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) rok: 2018 tm_hour: 15 

Ak nie Noneje zadaný žiadny argument alebo je odovzdaný localtime(), použije sa hodnota vrátená parametrom time().

Python time.gmtime ()

gmtime()Funkcia trvá počet sekúnd uplynulých od epochy ako argument a vracia sa struct_timev UTC .

 import time result = time.gmtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour) 

Po spustení programu bude výstup:

 result = time.struct_time (tm_year = 2018, tm_mon = 12, tm_mday = 28, tm_hour = 8, tm_min = 44, tm_sec = 4, tm_wday = 4, tm_yday = 362, tm_isdst = 0) rok = 2018 tm_hour = 8 

Ak nie Noneje zadaný žiadny argument alebo je odovzdaný gmtime(), použije sa hodnota vrátená parametrom time().

Python time.mktime ()

mktime()Funkcia má struct_time(alebo n-tica, ktorý obsahuje 9 prvkov zodpovedajúce struct_time) ako argument a vráti sekúnd uplynulo od epochy miestneho času. V podstate je to inverzná funkcia localtime().

 import time t = (2018, 12, 28, 8, 44, 4, 4, 362, 0) local_time = time.mktime(t) print("Local time:", local_time) 

Nasledujúci príklad ukazuje, ako mktime()a localtime()súvisia.

 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 - mesiac (01, 02, …, 11, 12)
  • %d - deň (01, 02, …, 30, 31)
  • %H - hodina (00, 01, …, 22, 23
  • %M - minúty (00, 01, …, 58, 59)
  • %S - druhá (00, 01, …, 58, 61)

Ak sa chcete dozvedieť viac, navštívte stránku: time.strftime ().

Python time.strptime ()

strptime()Funkcia analyzuje reťazec predstavujúci čas a vráti sa struct_time.

 import time time_string = "21 June, 2018" result = time.strptime(time_string, "%d %B, %Y") print(result) 

Po spustení programu bude výstup:

 time.struct_time (tm_year = 2018, tm_mon = 6, tm_mday = 21, tm_hour = 0, tm_min = 0, tm_sec = 0, tm_wday = 3, tm_yday = 172, tm_isdst = -1) 

Zaujímavé články...