Módulo de tiempo de Python (con ejemplos)

En este artículo, exploraremos el módulo de tiempo en detalle. Aprenderemos a utilizar diferentes funciones relacionadas con el tiempo definidas en el módulo de tiempo con la ayuda de ejemplos.

Python tiene un módulo llamado timepara manejar tareas relacionadas con el tiempo. Para usar las funciones definidas en el módulo, primero debemos importar el módulo. Así es cómo:

 import time

A continuación, se muestran las funciones relacionadas con el tiempo de uso común.

Python time.time ()

La time()función devuelve el número de segundos transcurridos desde época.

Para el sistema Unix, January 1, 1970, 00:00:00en UTC es la época (el punto donde comienza el tiempo).

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

Python time.ctime ()

La time.ctime()función toma los segundos transcurridos desde epoch como argumento y devuelve una cadena que representa la hora local.

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

Si ejecuta el programa, la salida será algo como:

 Hora local: jue., 27 de dic. 15:49:29 2018

Python time.sleep ()

La sleep()función suspende (retrasa) la ejecución del hilo actual durante el número de segundos especificado.

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

Para obtener más información, visite: Python sleep ().

Antes de hablar sobre otras funciones relacionadas con el tiempo, exploremos la time.struct_timeclase brevemente.

clase time.struct_time

Varias funciones del timemódulo, como gmtime(), asctime()etc., toman el time.struct_timeobjeto como argumento o lo devuelven.

Aquí tienes un ejemplo 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; Lunes es 0
7 tm_yday 1, 2,…, 366
8 tm_isdst 0, 1 o -1

Los valores (elementos) del time.struct_timeobjeto son accesibles usando índices y atributos.

Python time.localtime ()

La localtime()función toma el número de segundos transcurridos desde epoch como argumento y regresa struct_timeen la hora local .

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

Cuando ejecute el programa, la salida 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_yday = 361, tm_isdst = 0) año: 2018 tm_hour: 15 

Si no Nonese le pasa ningún argumento o localtime(), time()se usa el valor devuelto por .

Python time.gmtime ()

La gmtime()función toma el número de segundos transcurridos desde epoch como argumento y regresa struct_timeen UTC .

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

Cuando ejecute el programa, la salida será:

 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 

Si no Nonese le pasa ningún argumento o gmtime(), time()se usa el valor devuelto por .

Python time.mktime ()

La mktime()función toma struct_time(o una tupla que contiene 9 elementos correspondientes a struct_time) como argumento y devuelve los segundos transcurridos desde epoch en la hora local. Básicamente, es la función 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) 

El siguiente ejemplo muestra cómo mktime()y localtime()están 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 - mes (01, 02,…, 11, 12)
  • %d - día (01, 02,…, 30, 31)
  • %H - hora (00, 01,…, 22, 23
  • %M - minutos (00, 01,…, 58, 59)
  • %S - segundo (00, 01,…, 58, 61)

Para obtener más información, visite: time.strftime ().

Python time.strptime ()

La strptime()función analiza una cadena que representa el tiempo y regresa struct_time.

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

Cuando ejecute el programa, la salida 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) 

Articulos interesantes...