Agregar días a una fecha en Python

Resuelto MuraliKrishna asked hace 13 años • 18 respuestas

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
MuraliKrishna avatar Jul 29 '11 16:07 MuraliKrishna
Aceptado

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)
Botond Béres avatar Jul 29 '2011 10:07 Botond Béres

Importar timedeltay dateprimero.

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)
DrTyrsa avatar Jul 29 '2011 09:07 DrTyrsa

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)
fantabolous avatar Aug 29 '2014 14:08 fantabolous

Esto podría ayudar:

from datetime import date, timedelta
date1 = date(2011, 10, 10)
date2 = date1 + timedelta(days=5)
print (date2)
Pradeep Subash avatar Oct 01 '2020 12:10 Pradeep Subash

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')
Jorge Omar MH avatar Feb 20 '2018 19:02 Jorge Omar MH