Una necesidad que puede surgir al programar, es tener que comparar fechas en Python.
Implementar las comparaciones no es algo complejo y para ello emplearemos operadores de comparación de uso común como <, >, <=, >=, !=
y otros, dentro del modulo datetime()
.
import datetime
# fecha in yyyy/mm/dd format
fecha_1 = datetime.datetime(2020, 4, 6)
fecha_2 = datetime.datetime(2019, 12, 30)
fecha_3 = datetime.datetime(2019, 1, 1)
# la comparacion devolvera verdadero o falso
print("La fecha_1 es mas nueva que la fecha_3 : ", fecha_1 > fecha_3)
print("La fecha_2 es mas vieja que la fecha_3 : ", fecha_2 < fecha_3)
print("La fecha_3 es igual a la fecha_1 : ", fecha_3 == fecha_1)
print("La fecha_1 no es la misma que la fecha_2 : ", fecha_1 != fecha_2)
La salida que obtenemos es :
La fecha_1 es mas nueva que la fecha_3 : True
La fecha_2 es mas vieja que la fecha_3 : False
La fecha_3 es igual a la fecha_1 : False
La fecha_1 no es la misma que la fecha_2 : True
En este otro ejemplo comparamos varias fechas que entramos por teclado.
# Entramos por teclado las fechas
dia_1, mes_1, año_1 = [int(x) for x in input("Introduzca fecha del primer envio"
"(YYYY/MM/DD) : ").split('/')]
primera = date(dia_1, mes_1, año_1)
dia_2, mes_2, año_2 = [int(x) for x in input("Introduzca fecha del segundo envio"
"(YYYY/MM/DD) : ").split('/')]
segunda = date(dia_2, mes_2, año_2)
dia_3, mes_3, año_3 = [int(x) for x in input("Introduzca fecha del tercer envio"
"(YYYY/MM/DD) : ").split('/')]
tercera = date(dia_3, mes_3, año_3)
# Check the dates
if primera == segunda:
print("Es raro que ambas se hicieran en mismo dia")
elif tercera > primera:
print("es correcto")
else:
print("Debe analizarse")
Y esto es todo, espero sinceramente que este post, sirva a alguien.
No discutas nunca con un imbécil, te llevará a su terreno y allí te ganará por experiencia
D.