python

Obtener y formatear fecha y hora actual en Python

En este post veremos dos cosas para trabajar con la fecha y hora en Python:

  1. Cómo obtener la fecha y hora actual, separada por año, mes, día, hora, minuto, segundo y microsegundos
  2. Formatear la fecha y hora en Python para que sea legible y amigable.
Formatear y obtener fecha y hora actual en Python 3

Veremos algunos formatos útiles, como “Miércoles, 19 de diciembre del 2018” o “2018/12/19“, también con la hora, por ejemplo “Miércoles, 19 de diciembre del 2018. 7:30 AM” o incluso únicamente la hora, por ejemplo, “11:30 PM” o “23:10:15

Requisitos previos

Se necesita tener instalado Python 3 y PIP.

Obtener fecha y hora actual en Python

Primero se debe importar el objeto datetime del módulo datetime, así:

from datetime import datetime

Después, con datetime podemos llamar a now(), lo cual devuelve un objeto que tiene todas las propiedades que necesitamos para analizar la fecha actual.

See the gist on github.

Con ese objeto ya podemos crear todo tipo de formatos de fechas. A partir del mes saber su nombre, a partir de la hora saber si es AM o PM, etcétera.

Para ello, tendríamos que concatenar. Por dar un ejemplo:

fecha = "{}-{}-{}".format(ahora.year, ahora.month, ahora.day)

Aunque eso sería un poco engorroso y complicado en casos más grandes, así que, ¿por qué reinventar la rueda, si el lenguaje ya provee una forma de formatear fechas y horas?

Formatear fecha y hora en Python con strftime

Para formatear una fecha y hora en Python, la cual es obtenida con la función now, podemos llamar a strftime. Este método recibe el formato que deseamos, y devuelve la fecha formateada. Obtenemos la fecha y hora actual:

ahora = datetime.now()

Y luego formateamos, en este caso con algo como 2018-12-19:

print("Algo como 2018-12-19 => ", ahora.strftime("%Y-%m-%d"))

Llamamos al método strftime y le pasamos formateadores, el de %Y simboliza el año de 4 dígitos, el %m como mes y el %d el día.

¿De dónde salen estos formatos? de esta lista oficial.

Vamos a ver algunos casos comunes que seguramente a más de uno le servirán, pero por eso dejo ahí la lista de formateadores en caso de que las necesidades sean distintas.

Obtener la fecha y hora con nombre del día y nombre del mes

Como lo dije al inicio, se verá cómo obtener el nombre del día y el nombre del mes. Algo que imprimirá algo parecido a lo siguiente:

Miércoles, 19 de Diciembre del 2018

Aquí el código:

See the gist on github.

Utilizamos un diccionario y el método get del mismo para obtener el valor a partir del número de mes o día, luego simplemente formateamos una cadena.

Año, mes y día con hora completa

Otro formato útil es el que tiene la forma de “2018-12-19 20:15:22”. Esto es más fácil que el ejemplo anterior:

See the gist on github.

Lo único que se hace es aprovechar la función y los símbolos de formato que existen.

La hora en formato de 24 horas

Siguiendo con los formatos de fechas, veamos cómo obtener la hora en formato de 24 horas; esto es que, por ejemplo, a las 3 de la tarde sean a las 15 horas. El código es este:

See the gist on github.

Hora actual con AM o PM

Para terminar y mostrar AM o PM en la hora actual, con formato de 12 horas, se usa el modificador %p para el momento del día, así como el modificador %I en lugar del %H para la hora.

El código de ejemplo queda así:

See the gist on github.

Conclusión

Así de fácil es formatear fechas y horas en Python. Recuerda que siempre puedes comentar si tienes dudas.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Ver comentarios

Entradas recientes

JavaScript (lado del cliente): leer pixeles de imagen

En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…

4 días hace

PHP y JavaScript: llenar select con AJAX

Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…

4 días hace

Imprimir PDF generado con HTML

Hoy vamos a ver programar la impresión de un PDF generado a partir de HTML…

5 días hace

JavaScript: llenar select con arreglo

En este tutorial básico de JavaScript con HTML vamos a ver cómo llenar una lista…

2 semanas hace

Imprimir PDF a partir de URL

En este artículo se presenta una guía para imprimir un PDF a partir de una…

2 semanas hace

Imprimir PDF a partir de base64

En este post voy a enseñarte cómo imprimir un PDF a partir de su representación…

2 semanas hace

Esta web usa cookies.