Как можно преобразовать порядковый номер даты, представляющий число дней с эпохи (1970), в соответствующую строку даты? Я видел несколько сообщений, показывающих, как перейти от номера строки к дате, но я не смог найти никаких сообщений о том, как сделать обратное.Преобразование дней с эпохи на сегодняшний день
Например, 15951
соответствует "2013-09-02"
.
>>> import datetime
>>> (datetime.datetime(2013, 9, 2) - datetime.datetime(1970,1,1)).days + 1
15951
(+ 1
потому что независимо генерироваться эти цифры даты следовали конвенции, что Ян 1, 1970 = 1.)
TL; DR: Ищете что-то сделать следующее:
>>> serial_date_to_string(15951) # arg is number of days since 1970
"2013-09-02"
Это отличное от Python: Converting Epoch time into the datetime, потому что я начинаю с дней с 1970 года. Я не уверен, что вы можете просто умножить на 86 400 из-за прыжковых секунд и т. Д.
Я также открыт для решения Баш скрипт оболочки. – pault
Возможный дубликат [Python: преобразование времени Epoch в datetime] (http://stackoverflow.com/questions/12400256/python-converting-epoch-time-into-the-datetime) – Batsu
Использование: 'datetime.datetime (1970) , 1, 1, 0, 0) + datetime.timedelta (15951) ' – sisanared