¿Cuál es la diferencia entre “datetime.timedelta” y “dateutil.relativedelta.relativedelta” cuando se trabaja solo con días?

| | | | | | | | | | | | |

¿Cuál es la diferencia entre datetime.timedelta (de biblioteca estándar de Python) y dateutil.relativedelta.relativedelta cuando se trabaja solo con días?

Según tengo entendido, timedelta solo admite días (y semanas), mientras que relativedelta agrega soporte para períodos definidos en términos de años, meses, semanas o días , así como definir valores absolutos para el año, el mes o el día. (recuerde, a los efectos de esta pregunta, no tengo que preocuparme por las horas, los minutos o los segundos)

Considerando que solo estoy trabajando con datetime.date objetos, y solo me interesan los períodos definidos por el número de días, ¿cuál es la diferencia entre timedelta y relativedelta? ¿Hay alguna diferencia?

from datetime import date, timedelta from dateutil.relativedelta import relativedelta i = -1 # Esto podría haber sido cualquier número entero, positivo o negativo algún día = fecha.today() # ¿Hay alguna diferencia entre estas dos líneas? otrodia = algun dia + timedelta(dias=i) otrodia = algun dia + relativadelta(dias=i)