Python Comparar fechas

Ultima actualización en
domingo 24º abr. 2022

compare dates in python

  • Con python como el lenguaje más fácil disponible, es bastante fácil comparar fechas en python con los operadores de comparación (<, >, <=, >=, != etc).

Puede utilizar un objeto mayor que el operador > para comprobar si un objeto datetime es mayor que otro.

Usando time módulo

  • El módulo de tiempo proporciona el método strptime().
  • El método strptime() para manipular las fechas y toma la fecha en formato de cadena como entrada y la convierte en el formato de fecha de Python.
	import time

cDate = "09/12/2010"
jDate = "09/12/2021"

formatted1 = time.strptime(cDate, "%d/%m/%Y")
formatted2 = time.strptime(jDate, "%d/%m/%Y")
print(formatted1 < formatted2)
	

Salida

	True
	

Usando datetime módulo

  • Este módulo proporciona el método datetime() que toma tres parámetros para crear una fecha a partir del año, el mes y el día.
	import datetime

formatted1 = datetime.datetime(2011, 12, 9)
formatted2 = datetime.datetime(2020, 12, 9)
print(formatted1 < formatted2)
	

Salida

	True
	

compare datetimes python

Compruebe que una DateTime es menor que < o mayor que > DateTime

	import datetime

formatted1 = datetime.datetime(2022, 1, 11, 12, 44, 55)
formatted2 = datetime.datetime(2011, 2, 11, 13, 44, 55)
formatted3 = datetime.datetime(2001, 3, 11, 14, 44, 55)
print(formatted1 < formatted2)
print(formatted1 > formatted3)
	

Salida

	False
True
	

Comprobar si dos objetos DateTime son iguales

	import datetime

formatted1 = datetime.datetime(2022, 1, 11, 12, 44, 55)
formatted2 = datetime.datetime(2011, 2, 11, 13, 44, 55)
formatted3 = datetime.datetime(2022, 1, 11, 12, 44, 55)
print(formatted1 == formatted2)
print(formatted1 == formatted3)
	

Salida

	False
True
	

Comparar solo fechas de objetos DateTime

  • Solo se puede comparar la hora del objeto datetime con .date()
	import datetime

formatted1 = datetime.datetime(2022, 1, 11, 12, 44, 55)
formatted2 = datetime.datetime(2011, 1, 12, 13, 44, 55)
formatted3 = datetime.datetime(2022, 1, 11, 14, 44, 55)

print(formatted1.date() == formatted2.date())
print(formatted1.date() == formatted3.date())
print(formatted1.date() < formatted2.date())
print(formatted1.date() < formatted3.date())
print(formatted1.date() > formatted2.date())
print(formatted1.date() > formatted3.date())
	

Salida

	False
True
False
False
True
False
	

datetime comparison python

Comparar solo la hora de los objetos DateTime

  • Del mismo modo, puede comparar solo la hora del objeto datetime con .time()
	import datetime

formatted1 = datetime.datetime(2021, 1, 11, 12, 44, 55)
formatted2 = datetime.datetime(2022, 2, 11, 7, 50, 55)
formatted3 = datetime.datetime(2020, 3, 11, 12, 44, 55)

print(formatted1.time() == formatted2.time())
print(formatted1.time() == formatted3.time())
print(formatted1.time() < formatted2.time())
print(formatted1.time() < formatted3.time())
print(formatted1.time() > formatted2.time())
print(formatted1.time() > formatted3.time())
	

Salida

	False
True
False
False
True
False