Agregar días a una fecha en Python
Tengo una cita "10/10/11(m-d-y)"
y quiero agregarle 5 días usando un script de Python. Considere una solución general que también funcione a finales de mes.
Estoy usando el siguiente código:
import re
from datetime import datetime
StartDate = "10/10/11"
Date = datetime.strptime(StartDate, "%m/%d/%y")
print Date
-> está imprimiendo'2011-10-10 00:00:00'
Ahora quiero agregar 5 días a esta fecha. Use el siguiente código:
EndDate = Date.today()+timedelta(days=10)
Que devolvió este error:
name 'timedelta' is not defined
Las respuestas anteriores son correctas, pero generalmente es una mejor práctica:
import datetime
Entonces tendrás, usando datetime.timedelta
:
date_1 = datetime.datetime.strptime(start_date, "%m/%d/%y")
end_date = date_1 + datetime.timedelta(days=10)
Importar timedelta
y date
primero.
from datetime import timedelta, date
Y date.today()
devolverá la fecha y hora de hoy, a la que luego podrá agregarle un timedelta
:
end_date = date.today() + timedelta(days=10)
Si ya estás usando pandas , puedes ahorrar un poco de espacio sin especificar el formato:
import pandas as pd
startdate = "10/10/2011"
enddate = pd.to_datetime(startdate) + pd.DateOffset(days=5)
Esto podría ayudar:
from datetime import date, timedelta
date1 = date(2011, 10, 10)
date2 = date1 + timedelta(days=5)
print (date2)
Si desea agregar días hasta la fecha ahora, puede usar este código
from datetime import datetime
from datetime import timedelta
date_now_more_5_days = (datetime.now() + timedelta(days=5) ).strftime('%Y-%m-%d')