10.3. Módulo datetime

Nota

Propósito: Manipulación de valores de fecha y hora

El módulo datetime contiene funciones y clases para realizar análisis, formateo y aritmética de fecha y hora, por separado y en conjunto.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import datetime

fecha_nacimiento = "03121980"

dia = fecha_nacimiento[0:2]
mes = fecha_nacimiento[2:4]
ano = fecha_nacimiento[4:8]

fecha_nacimiento = datetime.date(int(ano), int(mes), int(dia))

print(f"Fecha de nacimiento: {fecha_nacimiento}.")

El anterior código al ejecutar debe mostrar el siguiente mensaje:

Fecha de nacimiento: 1980-12-03.

10.3.1. strftime

strftime es un formateador de cadenas, esto formateará un objeto de fecha y hora en formato de cadena de caracteres.

Los objetos date, datetime, y time admiten un método strftime(format), para crear una cadena que represente el objeto de fecha y hora bajo el control de una cadena de caracteres de formato explícito.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import datetime

datos_basicos = {
    "fecha_nacimiento": "03121980",
    "lugar_nacimiento": "Maracaibo, Zulia, Venezuela",
}

dia = datos_basicos["fecha_nacimiento"][0:2]
mes = datos_basicos["fecha_nacimiento"][2:4]
ano = datos_basicos["fecha_nacimiento"][4:8]

fecha_nacimiento = datetime.date(int(ano), int(mes), int(dia))

fecha = fecha_nacimiento.strftime("%d de %B de %Y")
lugar = datos_basicos["lugar_nacimiento"]
print(f"Fecha y lugar de nacimiento: {fecha} en {lugar}.")

El anterior código al ejecutar debe mostrar el siguiente mensaje:

Fecha y lugar de nacimiento: 03 de December de 1980 en Maracaibo, Zulia, Venezuela.

10.3.2. strptime

strptime es un analizador de cadenas, esto convertirá un formato de cadena a un objeto de fecha y hora.

El método de clase datetime.strptime() crea un objeto datetime a partir de una cadena de caracteres que representa una fecha y hora y una cadena de formato correspondiente.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
import datetime

datos_basicos = {
    "fecha_nacimiento": "03/12/1980",
    "lugar_nacimiento": "Maracaibo, Zulia, Venezuela",
}

fecha = (
    datetime.datetime.strftime(
        datetime.datetime.strptime(datos_basicos["fecha_nacimiento"], "%d/%m/%Y"),
        "%d de %B de %Y",
    ),
)
lugar = datos_basicos["lugar_nacimiento"]
print(f"Fecha y lugar de nacimiento: {fecha[0]} en {lugar}.")

El anterior código al ejecutar debe mostrar el siguiente mensaje:

Fecha y lugar de nacimiento: 03 de December de 1980 en Maracaibo, Zulia, Venezuela.

Importante

Usted puede descargar el código usado en esta sección haciendo clic en los siguientes enlaces:

Truco

Para ejecutar el código, abra una consola de comando, acceda al directorio donde se encuentra el programa:

proyectos/
└── datetime/
    ├── datetime_date.py
    ├── datetime_strftime.py
    └── datetime_strptime.py

Si tiene la estructura de archivo previa, entonces ejecute los siguientes comandos:

python3 datetime_date.py
python3 datetime_strftime.py
python3 datetime_strptime.py

Ver también

Consulte la sección de lecturas suplementarias del entrenamiento para ampliar su conocimiento en esta temática.



¿Cómo puedo ayudar?

¡Mi soporte está aquí para ayudar!

Mi horario de oficina es de lunes a sábado, de 9 AM a 5 PM. UTM - Madrid, España.

La hora aquí es actualmente 7:35 PM UTM.

Mi objetivo es responder a todos los mensajes dentro de un día hábil.

Contrata mi increíble soporte profesional