Neste artigo, exploraremos o módulo de tempo em detalhes. Aprenderemos a usar diferentes funções relacionadas ao tempo definidas no módulo de tempo com a ajuda de exemplos.
Python tem um módulo chamado timepara lidar com tarefas relacionadas ao tempo. Para usar funções definidas no módulo, precisamos primeiro importar o módulo. Veja como:
 import time
Aqui estão as funções relacionadas ao tempo comumente usadas.
Python time.time ()
A time()função retorna o número de segundos passados desde a época.
Para o sistema Unix, January 1, 1970, 00:00:00no UTC é epoch (o ponto onde o tempo começa).
 import time seconds = time.time() print("Seconds since epoch =", seconds) 
Python time.ctime ()
A time.ctime()função leva segundos passados desde epoch como um argumento e retorna uma string representando a hora local.
 import time # seconds passed since epoch seconds = 1545925769.9618232 local_time = time.ctime(seconds) print("Local time:", local_time) 
Se você executar o programa, a saída será algo como:
Horário local: Qui 27 de dezembro 15:49:29 2018
Python time.sleep ()
A sleep()função suspende (atrasa) a execução do thread atual por um determinado número de segundos.
 import time print("This is printed immediately.") time.sleep(2.4) print("This is printed after 2.4 seconds.") 
Para saber mais, visite: Python sleep ().
Antes de falarmos sobre outras funções relacionadas ao tempo, vamos explorar a time.struct_timeaula resumidamente.
classe time.struct_time
Várias funções no timemódulo, como gmtime(), asctime()etc., recebem o time.struct_timeobjeto como um argumento ou o retornam.
Aqui está um exemplo de time.struct_timeobjeto.
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)
| Índice | Atributo | Valores | 
|---|---|---|
| 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; Segunda-feira é 0 | 
| 7 | tm_yday |  1, 2, …, 366 | 
| 8 | tm_isdst |  0, 1 ou -1 | 
Os valores (elementos) do time.struct_timeobjeto são acessíveis usando índices e atributos.
Python time.localtime ()
A localtime()função pega o número de segundos passados desde epoch como um argumento e retorna struct_timena hora local .
 import time result = time.localtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour) 
Quando você executa o programa, a saída será algo como:
resultado: 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_year = 361, tm_isdst = 0) ano: 2018 tm_hour: 15
Se nenhum argumento ou Nonefor passado para localtime(), o valor retornado por time()será usado.
Python time.gmtime ()
A gmtime()função pega o número de segundos passados desde epoch como um argumento e retorna struct_timeem UTC .
 import time result = time.gmtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour) 
Quando você executa o programa, a saída será:
resultado = 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_year = 362, tm_isdst = 0) year = 2018 tm_hour = 8
Se nenhum argumento ou Nonefor passado para gmtime(), o valor retornado por time()será usado.
Python time.mktime ()
A mktime()função recebe struct_time(ou uma tupla contendo 9 elementos correspondentes a struct_time) como um argumento e retorna os segundos passados desde a época na hora local. Basicamente, é a função inversa de localtime().
 import time t = (2018, 12, 28, 8, 44, 4, 4, 362, 0) local_time = time.mktime(t) print("Local time:", local_time) 
O exemplo abaixo mostra como mktime()e localtime()estão relacionados.
 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- mês (01, 02, …, 11, 12)%d- dia (01, 02, …, 30, 31)%H- hora (00, 01, …, 22, 23%M- minutos (00, 01, …, 58, 59)%S- segundo (00, 01, …, 58, 61)
Para saber mais, visite: time.strftime ().
Python time.strptime ()
A strptime()função analisa uma string que representa o tempo e retorna struct_time.
 import time time_string = "21 June, 2018" result = time.strptime(time_string, "%d %B, %Y") print(result) 
Quando você executa o programa, a saída será:
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)








