2011-12-22 4 views
0

У меня есть следующие метки времени: 20111122051342.582000Преобразовать метки времени для datenum

Я использую следующий код для преобразования метки времени в datenum, но с этим я расторгнув millisecons

time.mktime((datetime.datetime.strptime(rows['TStamp'], "%Y%m%d%H%M%S.%f")).timetuple()) 

Для 20111122051342.582000 Я получаю 1321935222.0 Как я могу улучшить код выше, чтобы получить больше точности.

ответ

2

strptime не читает микросекунды. Попробуйте следующее:

ymdhms, usec = rows['TStamp'].split('.') 
time.mktime((datetime.datetime.strptime(ymdhms, "%Y%m%d%H%M%S")).timetuple()) + int(usec)/1000000. 

Это работает для шести (нулевых) цифр после десятичной точки.

Смежные вопросы