Qual é a diferença entre “datetime.timedelta” e “dateutil.relativedelta.relativedelta” ao trabalhar apenas com dias?

| | |

Qual é a diferença entre datetime.timedelta (de biblioteca padrão do Python) e dateutil.relativedelta.relativedelta ao trabalhar apenas com dias?

Pelo que entendi, timedelta suporta apenas dias (e semanas), enquanto relativedelta adiciona suporte para períodos definidos em termos de anos, meses, semanas ou dias , além de definir valores absolutos para ano, mês ou dia. (lembre-se, para os propósitos desta pergunta, não preciso me preocupar com horas, minutos ou segundos)

Considerando que estou trabalhando apenas com datetime.date objetos, e interessado apenas em períodos definidos pelo número de dias, qual é a diferença entre timedelta e relativedelta? Existe alguma diferença?

from datetime import date, timedelta from dateutil.relativedelta import relativedelta i = -1 # Isso poderia ter sido qualquer número inteiro, positivo ou negativo algum dia = date.today() # Existe alguma diferença entre essas duas linhas? otherday = someday + timedelta(days=i) otherday = someday + relativedelta(days=i)