Cómo manejar fechas en Python

Trabajar con fechas y horas es una de las tareas más comunes en programación: desde registrar la fecha de un pedido hasta calcular la diferencia entre dos eventos. Python facilita este proceso gracias a su módulo datetime, que nos permite obtener la fecha y hora actuales, formatearlas a nuestro gusto y realizar operaciones como sumas o restas de días.

Comandos más frecuentes para trabajar con fechas en Python

Importar el módulo datetime

import datetime

Obtener la fecha y hora actual

from datetime import datetime

ahora = datetime.now()
print(ahora)  # Ejemplo: 2025-09-26 12:34:56.789012

Obtener solo la fecha o la hora

print(ahora.date())  # 2025-09-26
print(ahora.time())  # 12:34:56.789012

Crear una fecha específica

fecha = datetime(2023, 12, 25)
print(fecha)  # 2023-12-25 00:00:00

Formatear fechas con strftime()

print(ahora.strftime("%d/%m/%Y"))  # 26/09/2025
print(ahora.strftime("%H:%M:%S"))  # 12:34:56

Tabla de formatos comunes en strftime()

| Código | Descripción             | Ejemplo      |
| ------ | ----------------------- | ------------ |
| `%d`   | Día (2 dígitos)         | `26`         |
| `%m`   | Mes (2 dígitos)         | `09`         |
| `%Y`   | Año con 4 dígitos       | `2025`       |
| `%y`   | Año con 2 dígitos       | `25`         |
| `%H`   | Hora (24h)              | `14`         |
| `%I`   | Hora (12h)              | `02`         |
| `%M`   | Minutos                 | `30`         |
| `%S`   | Segundos                | `45`         |
| `%p`   | AM/PM                   | `PM`         |
| `%A`   | Nombre completo del día | `Viernes`    |
| `%a`   | Nombre corto del día    | `Vie`        |
| `%B`   | Nombre completo del mes | `Septiembre` |
| `%b`   | Nombre corto del mes    | `Sep`        |

 Convertir un string en fecha con strptime()

fecha_str = "15-08-2025"
fecha_convertida = datetime.strptime(fecha_str, "%d-%m-%Y")
print(fecha_convertida)  # 2025-08-15 00:00:00

Operaciones con fechas (timedelta)

from datetime import timedelta

manana = ahora + timedelta(days=1)
ayer = ahora - timedelta(days=1)

print("Mañana:", manana)
print("Ayer:", ayer)

Diferencia entre dos fechas

inicio = datetime(2025, 1, 1)
fin = datetime(2025, 9, 26)

diferencia = fin - inicio
print("Días transcurridos:", diferencia.days)

 

Ejercicio práctico: Calculadora de cumpleaños

Crea un programa que pida al usuario su fecha de nacimiento y le diga cuántos días faltan para su próximo cumpleaños.

from datetime import datetime, timedelta

# Pedimos la fecha de nacimiento
nacimiento_str = input("Introduce tu fecha de nacimiento (dd-mm-aaaa): ")
nacimiento = datetime.strptime(nacimiento_str, "%d-%m-%Y")

# Fecha actual
hoy = datetime.now()

# Próximo cumpleaños
cumpleaños = datetime(hoy.year, nacimiento.month, nacimiento.day)

# Si ya pasó este año, sumamos un año
if cumpleaños < hoy:
    cumpleaños = cumpleaños.replace(year=hoy.year + 1)

# Calculamos la diferencia
faltan = (cumpleaños - hoy).days

print(f"Faltan {faltan} días para tu próximo cumpleaños 🎉")

El manejo de fechas en Python es muy flexible gracias al módulo datetime. Con estos comandos, la tabla de formatos y el ejercicio práctico, ya puedes empezar a trabajar con fechas en tus propios proyectos.

 

Programación, Python

No hay comentarios en “Cómo manejar fechas en Python”

Deje su comentario

En respuesta a Some User

Artículos Destacados

phpinfo() es una función de PHP que proporciona información detallada sobre la configuración y el estado...
mysql_secure_installation es un script que se ejecuta en la línea de comandos para mejorar la seguridad de...
Agregar autenticación de usuario y contraseña a Elasticsearch es un proceso importante para proteger los...