Diferencia entre dos fechas en Python
Tengo dos fechas diferentes y quiero saber la diferencia de días entre ellas. El formato de la fecha es AAAA-MM-DD.
Tengo una función que puede SUMAR o RESTAR un número determinado a una fecha:
def addonDays(a, x):
ret = time.strftime("%Y-%m-%d",time.localtime(time.mktime(time.strptime(a,"%Y-%m-%d"))+x*3600*24+3600))
return ret
donde A es la fecha y x la cantidad de días que quiero agregar. Y el resultado es otra cita.
Necesito una función donde pueda dar dos fechas y el resultado sería un int con diferencia de fechas en días.
Aceptado
Úselo -
para obtener la diferencia entre dos datetime
objetos y tome el days
miembro.
from datetime import datetime
def days_between(d1, d2):
d1 = datetime.strptime(d1, "%Y-%m-%d")
d2 = datetime.strptime(d2, "%Y-%m-%d")
return abs((d2 - d1).days)
Otra solución breve:
from datetime import date
def diff_dates(date1, date2):
return abs(date2-date1).days
def main():
d1 = date(2013,1,1)
d2 = date(2013,9,13)
result1 = diff_dates(d2, d1)
print '{} days between {} and {}'.format(result1, d1, d2)
print ("Happy programmer's day!")
main()