Есть ли библиотека для преобразования количества дней в указанном c году в месяц и дату? - PullRequest
0 голосов
/ 06 января 2020

У меня есть информация, которая содержит c год и количество дней. Например, 2000137 означает 16 мая 2000 года, потому что 16 мая - 137-й день 2000 года. Мне нужны эти числа, например 2000137, в формате 2000-05-16. Я могу сделать такое преобразование, учитывая, сколько дней в каждом месяце и сколько дней в каждом году, но мне нужно принять во внимание високосные годы, и такой код кажется слишком утомительным для реализации. Интересно, есть ли в Excel простая функция или Python для такого преобразования.

1 Ответ

1 голос
/ 06 января 2020

Вы можете достичь вышеуказанного, используя функции Python fromordinal и toordinal в библиотеке datetime .

Попробуйте выполнить следующее:

from datetime import date
ip=2000137
year=ip//1000
days=ip%1000
#days until that year
days_till_year=date(year,1,1).toordinal()
days_till_input=days_till_year+days-1
print(date.fromordinal(days_till_input))

Вывод будет:

2000-05-16
...