У меня есть две даты, выраженные как datetime
объекты, и я пытаюсь вычислить время между двумя датами в долях лет (эквивалентно функции Excel yearfrac
).
Используя relativedelta
, я могуполучить количество лет, количество месяцев и количество дней между датами, но не долю лет, и я также могу вычесть даты, чтобы получить количество дней, но деление на 365.25, похоже, не дает мнея бы ожидал ответа.
start_date = dt.datetime(2010, 12, 31)
end_date = dt.datetime(2019, 5, 16);
delta = relativedelta(end_date, start_date);
print(delta)
Вот такой вывод я получаю:
относительная дельта (годы = + 8, месяцы = + 4, дни = + 16)
Я ищу следующее: 8.38
Если я использую следующий код:
delta = (end_date - start_date)/365.25
print(delta)
Я получаю вывод: 8 дней, 8:56:10.841889