Python time: todo sobre el uso y funciones del módulo
time
de Python es un módulo que se puede utilizar para obtener fechas en el lenguaje de programación. El módulo ofrece numerosas funciones y utiliza la especificación de tiempo de Unix y los objetos struct_time
.
¿En qué consiste el módulo Python time
y cómo se utiliza?
El módulo time
de Python es de crucial importancia para la implementación y consideración de especificaciones de tiempo en el lenguaje de programación. Entre las tareas que puede realizar este módulo se encuentran la presentación de la hora actual, el formateo de especificaciones de tiempo y la especificación de una duración concreta al ejecutar una función. Para poder utilizar el módulo, primero se debe importar time
de la siguiente forma:
Puedes llevar a cabo diversas funciones con este módulo. Te mostramos las más importantes en los siguientes apartados. Si buscas una alternativa a time
, una buena opción es datetime de Python.
time.time()
y el significado de la marca de tiempo Unix
La base de la función time.time()
es la marca de tiempo de Unix. Esto describe un punto exacto en el pasado a partir del cual se mide el tiempo en un sistema. Para Windows y muchos sistemas Unix, este punto en el tiempo es el 1 de enero de 1970, a las 00:00:00 (Tiempo Universal Coordinado). Python también utiliza este momento como base. Alternativamente, el cálculo a partir de este segundo se denomina “tiempo desde la época”. La función time.time()
te da el número de segundos que han pasado desde este momento a principios de los años 70. Para ello, utiliza el siguiente código:
Obtendremos este resultado:
time.ctime()
: presentar los datos de forma legible
Sin embargo, como esta información es normalmente de poca utilidad, time
te ofrece la opción de utilizar la marca de tiempo de Unix como base para una fecha. De este modo, te beneficias de la precisión de esta medida de tiempo, pero obtienes la marca en un formato comprensible. La función adecuada es time.ctime()
. Esta convierte directamente la marca de tiempo Unix en una fecha. El código correspondiente sería el siguiente:
Nuestro resultado será el siguiente. Se tiene en cuenta la hora local:
La solución ideal para trabajar en tu proyecto web: con Deploy Now de IONOS, puedes desplegar cambios en el código directamente con GitHub y beneficiarte de la personalización en tiempo real. Busca la tarifa que se adecúe a tus necesidades.
time.sleep()
: programar la ejecución de un programa
Sin embargo, time
de Python puede hacer mucho más que mostrar la hora actual. El módulo también se utiliza para controlar o retrasar la ejecución de un programa. La función correspondiente es time.sleep()
y se ejecuta así:
Nuestro resultado sería el siguiente:
Sin embargo, la segunda parte solo se emite tras un retardo de cinco segundos. Puedes averiguar para qué puedes utilizar time.sleep() de Python en nuestro artículo de la Digital Guide.
Objetos struct_time
para time
El objeto struct_time
es la base de muchas funciones time
de Python. Normalmente se utiliza como parámetro o valor de retorno y produce una tupla cuyo valor puede especificarse mediante el índice o el atributo. Para ello se pueden utilizar los siguientes atributos:
Índice | Atributo | Descripción | Valores posibles |
---|---|---|---|
0 | tm_year | Año | 0000, …, 2024, …, 9999 |
1 | tm_mon | Mes | 1, 2, 3, …, 12 |
2 | tm_mday | Día del mes | 1, 2, 3, 31 |
3 | tm_hour | Hora del día | 0, 1, 2, …, 23 |
4 | tm_min | Minutos | 0, 1, 2, …, 59 |
5 | tm_sec | Segundos | 0, 1, 2, …, 60, 61 |
6 | tm_wday | Día de la semana | 0 (para lunes), …, 6 (para domingo) |
7 | tm_yday | Día del año | 1, 2, 3, …, 366 |
8 | tm_isdst | Horario de verano o invierno | 0 (invierno), 1 (verano) o -1 (no especificado) |
time.localtime()
: conexión de struct_time
y el tiempo desde Epoch
La función time.localtime()
utiliza un objeto struct_time
basado en la marca de tiempo Unix. Este sería el código:
Así obtenemos el siguiente resultado:
Alternativamente, también es posible seleccionar cualquier valor para el parámetro localtime()
. El código será similar a este:
El resultado sería el siguiente:
time.mktime()
: el equivalente inverso a localtime()
time.mktime()
en time
es la función inversa a localtime()
. Utiliza un objeto struct_time
como parámetro y el sistema devuelve la correspondiente marca de tiempo desde la época. Así se vería el código:
El resultado es un valor de segundos en este formato:
time.gmtime()
: Tiempo Universal Coordinado para la visualización
time.gmtime()
es en gran parte equivalente a time.localtime()
. Sin embargo, el objeto struct_time
correspondiente se devuelve en Tiempo Universal Coordinado. Este es el código:
Por lo tanto, el resultado de esta función time
difiere en algunos detalles del ejemplo anterior:
time.asctime()
: convertir objetos struct_time
en cadenas
Puedes usar time.asctime()
para convertir un objeto struct_time
en una cadena Python. Podría verse así, por ejemplo:
De este modo, obtendrás un mayor resultado inmediato:
time.strftime()
: crea una cadena con time
Aquí utilizamos diferentes códigos de formato para mostrar la hora actual en el formato deseado. Para darte una idea de los diferentes códigos de formato, enumeramos aquí algunos de los más importantes:
- %Y: representa el año en el formato 0001, …, 2024, …, 9999
- %m: representa el mes y utiliza los números del 01 (enero) al 12 (diciembre)
- %d: representa el día del 01 del mes al 31
- %H: representa la hora en el rango de 00 a 23
- %M: representa el minuto y va de 00 a 59
- %S: representa el segundo del 00 al 61
El código podría ser el siguiente:
En este caso, el resultado sería:
time.strptime()
: convertir cadenas en objetos struct_time
time
también tiene una contrapartida para esto: time.strptime()
utiliza una cadena para dar salida a un objeto struct_time
. Este es el código apropiado:
Obtenemos este resultado:
En nuestra Digital Guide encontrarás muchos más artículos sobre este popular lenguaje de programación. Entre otras cosas, tenemos un tutorial de Python, una guía para instalar Python y un artículo sobre diferentes operadores Python.