Comparar fechas en Python

Comparar fechas en Python

¿Quieres ser expert@ en Python? 🐍

❤️ He ayudado a miles de programadores/as como tú a ser mejores Pythonistas

📩 Recibe de vez en cuando trucos, scripts y tutoriales Python en español

🥇 Accede a nuestra comunidad privada de Slack: Pythonistas-es

* Al enviar el formulario confirmas que aceptas la POLITICA DE PRIVACIDAD

Comparar fechas en Python es realmente sencillo. Tan solo tienes que hacer uso de los operadores de comparación.

En este artículo voy a explicarte cómo comparar fechas en Python y unas consideraciones previas que debes tener en cuenta cuando se comparan dos objetos de tipo fecha.

Índice

Consideraciones previas

Para trabajar con fechas en Python hay que hacer uso del módulo datetime. Este módulo define dos objetos para representar fechas: datetime y date.

datetime es una fecha que incluye tiempo, mientras que date simplemente especifica una fecha.

Los únicos operadores que se pueden utilizar para comparar un objeto datetime con un objeto date son el de igualdad (==) y el distinto (!=). Comparar un objeto datetime con un objeto date usando el operador == siempre será False, puesto que son objetos diferentes. Una comparación con != devolverá True por el mismo motivo.

>>> import datetime
>>> fecha1 = datetime.datetime(2020, 4, 13)
>>> fecha2 = datetime.date(2020, 4, 13)

>>> print(fecha1 == fecha2)
False

>>> print(fecha1 != fecha2)
True

Una vez aclarado esto, ya podemos pasar a las siguientes secciones.

🎯 Recuerda antes de comparar dos objetos de tipo fecha que ambos deben ser del mismo tipo. A no ser que de verdad quieras comparar que son objetos diferentes.

Comparar si dos fechas son iguales en Python

En Python, para comparar si dos fechas son iguales basta con utilizar el operador de igualdad:

>>> import datetime
>>> fecha1 = datetime.datetime(2020, 4, 13)
>>> fecha2 = datetime.datetime(2020, 4, 13)
>>> print(fecha1 == fecha2)
True

>>> fecha3 = datetime.datetime(2019, 4, 13)
>>> print(fecha1 == fecha3)
False

Comprobar si dos fechas son distintas en Python

También puedes comprobar si dos fechas son diferentes utilizando el operador !=. A continuación te muestro un ejemplo:

>>> import datetime
>>> fecha1 = datetime.datetime(2020, 4, 13)
>>> fecha2 = datetime.datetime(2020, 4, 13)
>>> fecha3 = datetime.datetime(2019, 4, 13)

>>> print(fecha1 != fecha2)
False

>>> print(fecha1 != fecha3)
True

Comparar si una fecha es anterior o posterior a otra

Por último, en Python también es posible comprobar si una fecha es anterior o posterior a otra fecha. Para ello, puedes utilizar los operadores <, <=, > o >=.

Veámoslo con un ejemplo:

>>> import datetime
>>> fecha1 = datetime.datetime(2020, 1, 1)
>>> fecha2 = datetime.datetime(2019, 1, 1)

>>> print(fecha1 < fecha2)
False

>>> print(fecha1 > fecha2)
True

>>> print(fecha2 < fecha1)
True

>>> print(fecha2 > fecha1)
False

Recuerda que los mismos ejemplos vistos en cada una de las secciones anteriores se podrían aplicar a objetos de tipo date:

>>> import datetime
>>> fecha1 = datetime.date(2020, 2, 3)
>>> fecha2= datetime.date(2019, 2, 3)

>>> print(fecha1 == fecha2)
False

>>> print(fecha1 > fecha2)
True

¿Te ha gustado? Ayúdame a compartirlo 🤗

Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn

¿Quieres ser expert@ en Python? Recibe trucos Python y accede a nuestro espacio privado de Slack

¡Eyyy! Esto también te puede interesar 👇

* Te informo de que los datos de carácter personal que proporciones al comentar serán tratados por Juan José Lozano Gómez como responsable de esta web. La Finalidad es moderar los comentarios. La Legitimación es gracias a tu consentimiento. Destinatarios: tus datos se encuentran alojados en Disqus (disqus.com), mi sistema de comentarios, que está acogido al acuerdo de seguridad EU-US Privacy. Podrás ejercer Tus Derechos de Acceso, Rectificación, Limitación o Suprimir tus datos enviando un email a juanjo@j2logo.com. Encontrarás más información en la POLÍTICA DE PRIVACIDAD.

Deja una respuesta

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

Sobre j2logo

j2logo profile

Quiero ayudarte a que seas mejor programador/a, pero no uno cualquiera, sino uno de los top.

¿Quieres ser expert@ en PYTHON?

j2logo-pythonistas

❤️ He ayudado a miles de programadores/as como tú

📩 Recibe trucos, scripts y tutoriales Python

🥇 Accede a nuestra comunidad privada de Slack