În acest articol, vom explora în detaliu modulul de timp. Vom învăța să folosim diferite funcții legate de timp definite în modulul timp cu ajutorul unor exemple.
Python are un modul numit time
pentru a gestiona sarcinile legate de timp. Pentru a utiliza funcțiile definite în modul, trebuie mai întâi să importăm modulul. Iată cum:
import time
Aici sunt frecvent utilizate funcțiile legate de timp.
Python time.time ()
În time()
Funcția returnează numărul de secunde au trecut de la începutul erei.
Pentru sistemul Unix, January 1, 1970, 00:00:00
la UTC este epoca (punctul în care începe timpul).
import time seconds = time.time() print("Seconds since epoch =", seconds)
Python time.ctime ()
time.ctime()
Funcția secunde ia trecut de epocă ca un argument și returnează un șir de caractere care reprezintă ora locală.
import time # seconds passed since epoch seconds = 1545925769.9618232 local_time = time.ctime(seconds) print("Local time:", local_time)
Dacă rulați programul, rezultatul va fi ceva de genul:
Ora locală: joi 27 dec. 15:49:29 2018
Python time.sleep ()
sleep()
Suspendă funcția (întârzieri) executarea firului curent pentru numărul dat de secunde.
import time print("This is printed immediately.") time.sleep(2.4) print("This is printed after 2.4 seconds.")
Pentru a afla mai multe, vizitați: Python sleep ().
Înainte de a vorbi despre alte funcții legate de timp, să explorăm time.struct_time
pe scurt cursul.
time.struct_time Clasa
Mai multe funcții din time
modul, cum ar fi gmtime()
, asctime()
etc. fie iau time.struct_time
obiectul ca argument, fie îl returnează.
Iată un exemplu de time.struct_time
obiect.
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)
Index | Atribut | Valori |
---|---|---|
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; Luni este 0 |
7 | tm_yday | 1, 2,…, 366 |
8 | tm_isdst | 0, 1 sau -1 |
Valorile (elementele) time.struct_time
obiectului sunt accesibile folosind atât indici, cât și atribute.
Python time.localtime ()
localtime()
Funcția ia numărul de secunde au trecut de epocă ca un argument și se întoarce struct_time
la ora locală .
import time result = time.localtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour)
Când rulați programul, ieșirea va fi ceva de genul:
rezultat: 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) an: 2018 tm_hour: 15
Dacă nu None
se transmite niciun argument sau se utilizează localtime()
valoarea returnată de time()
.
Python time.gmtime ()
gmtime()
Funcția ia numărul de secunde au trecut de epocă ca un argument și se întoarce struct_time
în UTC .
import time result = time.gmtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour)
Când rulați programul, ieșirea va fi:
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) year = 2018 tm_hour = 8
Dacă nu None
se transmite niciun argument sau se utilizează gmtime()
valoarea returnată de time()
.
Python time.mktime ()
mktime()
Funcția ia struct_time
(sau un tuplu care conține 9 elemente corespunzătoare la struct_time
) ca un argument și returnează secundele au trecut de epocă în ora locală. Practic, este funcția inversă a localtime()
.
import time t = (2018, 12, 28, 8, 44, 4, 4, 362, 0) local_time = time.mktime(t) print("Local time:", local_time)
Exemplul de mai jos arată cum mktime()
și localtime()
sunt legate.
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
- lună (01, 02,…, 11, 12)%d
- zi (01, 02,…, 30, 31)%H
- ora (00, 01,…, 22, 23%M
- minute (00, 01,…, 58, 59)%S
- al doilea (00, 01,…, 58, 61)
Pentru a afla mai multe, vizitați: time.strftime ().
Python time.strptime ()
strptime()
Funcția Analizează un șir de caractere care reprezintă timp și se întoarce struct_time
.
import time time_string = "21 June, 2018" result = time.strptime(time_string, "%d %B, %Y") print(result)
Când rulați programul, ieșirea va fi:
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)