Python Fecha y hora
Python Fechas
Una fecha en Python no es un tipo de datos en sí misma, pero podemos importar un módulo llamado datetime
para trabajar con fechas como objetos de fecha.
Ejemplo
Importe el módulo de fecha y hora y muestre la fecha actual:
import datetime
x = datetime.datetime.now()
print(x)
Inténtalo tú mismo »
Fecha de salida
Cuando ejecutamos el código del ejemplo anterior, el resultado será:
La fecha contiene año, mes, día, hora, minuto, segundo y microsegundo.
El módulo datetime
tiene muchos métodos para devolver información sobre el objeto de fecha.
Aquí hay algunos ejemplos; aprenderá más sobre ellos más adelante en este capítulo:
Ejemplo
Devuelve el año y el nombre del día de la semana:
import datetime
x = datetime.datetime.now()
print(x.year)
print(x.strftime("%A"))
Inténtalo tú mismo »
Crear objetos de fecha
Para crear una fecha, podemos usar la clase (constructor) datetime()
del datetime
módulo.
La clase datetime()
requiere tres parámetros para crear una fecha: año, mes y día.
Ejemplo
Crear un objeto de fecha:
import datetime
x = datetime.datetime(2020, 5, 17)
print(x)
Inténtalo tú mismo »
La clase datetime()
también toma parámetros para la hora y la zona horaria (hora, minuto, segundo, microsegundo, tzone), pero son opcionales y tienen un valor predeterminado de 0
, (>None
para zona horaria).
El método strftime()
El objeto datetime
tiene un método para formatear objetos de fecha en cadenas legibles.
El método se llama strftime()
y toma un parámetro, format
, para especificar el formato, de la cadena devuelta:
Ejemplo
Mostrar el nombre del mes:
import datetime
x = datetime.datetime(2018, 6, 1)
print(x.strftime("%B"))
Inténtalo tú mismo »
Una referencia de todos los códigos de formato legal:
Directiva | Descripción | Ejemplo | Intentalo |
---|---|---|---|
%a | Día laborable, versión corta | Wed | Intentalo » |
%A | Día laborable, versión completa | Wednesday | Intentalo » |
%w | Día laborable como número del 0 al 6, 0 es domingo | 3 | Intentalo » |
%d | Día del mes 01–31 | 31 | Intentalo » |
%b | Nombre del mes, versión corta | Dec | Intentalo » |
%B | Nombre del mes, versión completa | December | Intentalo » |
%m | Mes como número 01–12 | 12 | Intentalo » |
%y | Año, versión corta, sin siglo. | 18 | Intentalo » |
%Y | Año, versión completa | 2018 | Intentalo » |
%H | Hora 00-23 | 17 | Intentalo » |
%I | Hora 00-12 | 05 | Intentalo » |
%p | AM/PM | PM | Intentalo » |
%M | Minuto 00-59 | 41 | Intentalo » |
%S | Segundo 00-59 | 08 | Intentalo » |
%f | Microsegundo 000000-999999 | 548513 | Intentalo » |
%z | Desplazamiento UTC | +0100 | |
%Z | Zona horaria | CST | |
%j | Número de día del año 001-366 | 365 | Intentalo » |
%U | Número de semanas del año, domingo como primer día de la semana, 00–53 | 52 | Intentalo » |
%W | Número de semanas del año, lunes como primer día de la semana, 00–53 | 52 | Intentalo » |
%c | Versión local de fecha y hora | Sun Dec 31 17:41:00 2023 | Intentalo » |
%C | Siglo | 20 | Intentalo » |
%x | Versión local de la fecha | 12/31/18 | Intentalo » |
%X | Versión local de la hora | 17:41:00 | Intentalo » |
%% | Un personaje % | % | Intentalo » |
%G | ISO 8601 año | 2018 | Intentalo » |
%u | ISO 8601 día laborable (1–7) | 1 | Intentalo » |
%V | ISO 8601 Número de la semana (01-53) | 01 | Intentalo » |