Python - преобразование временной шкалы

Alee спросил: 28 апреля 2018 в 08:47 в: python-2.7

Я преобразовал некоторые данные датчиков в формат CSV. Данные содержат атрибут timestamp, который разделен на две части следующим образом:

measurement_timestamp_begin: 
  seconds: 3733032665
  fractions: 3056174174

Мне нужно преобразовать это в стандартный формат временной отметки UNIX. Я видел несколько сообщений для преобразования, но каждый метод получает один аргумент. Я не понимаю часть fraction. Значит ли это seconds.fraction? например +3733032665,3056174174 . Р>

1 ответ

Alee ответил: 29 апреля 2018 в 09:00

Следующий код преобразует вышеупомянутый формат метки времени в стандартный формат временной отметки UNIX.

#!/usr/bin/env pythonimport datetime, timeunix_epoch = datetime.date(*time.gmtime(0)[0:3])ntp_epoch = datetime.date(1900, 1, 1)ntp_delta = (unix_epoch - ntp_epoch).days * 24 * 3600def ntp_to_unix_time(date):
    return (date - ntp_delta)print datetime.datetime.fromtimestamp(int(ntp_to_unix_time(3733032665.3056174174))).strftime('%Y-%m-%d %H:%M:%S')