con - diferencia entre fechas python
¿Cómo comparar dos fechas? (3)
¿Cómo compararía dos fechas para ver cuál es más tarde, usando Python?
Por ejemplo, quiero verificar si la fecha actual es anterior a la última fecha en esta lista que estoy creando, de las fechas de vacaciones, para que envíe un correo electrónico automáticamente, y le diga al administrador que actualice el archivo holiday.txt.
Usar el time
Digamos que tienes las fechas iniciales como cadenas como estas:
date1 = "31/12/2015"
date2 = "01/01/2016"
Puedes hacer lo siguiente:
newdate1 = time.strptime(date1, "%d/%m/%Y")
y newdate2 = time.strptime(date2, "%d/%m/%Y")
para convertirlos al formato de fecha de python. Entonces, la comparación es obvia:
newdate1 > newdate2
devolverá False
newdate1 < newdate2
devolverá True
Utilice el método datetime
y el operador <
y su parentesco.
>>> from datetime import datetime, timedelta
>>> past = datetime.now() - timedelta(days=1)
>>> present = datetime.now()
>>> past < present
True
>>> datetime(3000, 1, 1) < present
False
>>> present - datetime(2000, 4, 4)
datetime.timedelta(4242, 75703, 762105)
datetime.date(2011, 1, 1) < datetime.date(2011, 1, 2)
devolverá True
.
datetime.date(2011, 1, 1) - datetime.date(2011, 1, 2)
devolverá datetime.timedelta(-1)
.
datetime.date(2011, 1, 1) + datetime.date(2011, 1, 2)
devolverá datetime.timedelta(1)
.
ver los docs .