En este post te mostraré como validar fechas en Python. Es decir, validar que una cadena representando a una fecha sea válida y cumpla con un formato.

Además de comprobar que el formato sea el correcto (por ejemplo YYYY-MM-DD) también vamos a verificar que la fecha en sí sea válida, revisando por ejemplo que los días del mes no sean mayores a los soportados, que el número de mes no sea mayor a 12, etcétera.

Parsear fecha en Python

Lo que tenemos que hacer es tratar de parsear la fecha y, en caso de que se genere una excepción, diremos que la fecha no es válida.

Comenzamos importando a datetime que está dentro de datetime:

from datetime import datetime

Después podemos parsearla con:

fecha = datetime.strptime(fecha_como_cadena, formato)

En donde fecha_como_cadena es la fecha de la cual comprobaremos su validez, y formato es el formato que debe cumplir.

Un sencillo ejemplo es:

Validando fecha en Python

Si strptime encuentra una inconsistencia en la fecha, va a generar una excepción. Por lo tanto podemos encerrarla en un try except lo que nos lleva al ejemplo completo:

En el ejemplo solicitamos la fecha por teclado, intentamos parsearla según el formato que se ve y en caso de que haya un error lo informamos.

Funciona de maravilla; por ejemplo, respeta años bisiestos, días del mes, etcétera:

Validación de fechas en Python

En el ejemplo puedes ver que estoy validando fechas en Python ya que por ejemplo en este año (2020) sí hubo 29 días en febrero, pero en el 2019 no, así que también se verifica si es o no bisiesto.

Por otro lado, no se pueden poner meses más allá del 12 ni cadenas que no conformen el formato. Puedes probar el ejemplo en línea.


Estoy disponible para trabajar en tu proyecto o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.
Si el post fue de tu agrado muestra tu apoyo compartiéndolo, suscribiéndote al blog, siguiéndome o realizando una donación.

Suscribir por correo

Ingresa tu correo y recibirás mis últimas entradas sobre programación, open source, bases de datos y todo lo relacionado con informática

Únete a otros 2,824 suscriptores


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/

0 Comentarios

Deja un comentario

Marcador de posición del avatar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

A %d blogueros les gusta esto: