2012-02-10 2 views
0

Я вижу, как How can I parse a time string containing milliseconds in it with python? предоставляет решение при анализе полной метки времени и Is there an inverse function for time.gmtime() that parses a UTC tuple to seconds since the epoch? обеспечивает решение при анализе time.gmtime(). Как обрабатывать time.time()? Это означает, что он преобразует его во временный кортеж или что-то подобное с лучшей точностью.Как анализировать time.time()?

Я надеялся сохранить микросекунды.

ответ

1

Существует long history обсуждения на питон багтрекер о round-tripping timestamps. Это, вероятно, стоит прочитать, но быстрый хак:

In [1]: import datetime, time 

In [2]: dt = datetime.datetime(2012, 2, 10, 15, 18, 15, 234567) 

In [3]: seconds = time.mktime(dt.timetuple()) 

In [4]: seconds += (dt.microsecond/1000000.0) 

In [5]: seconds 
Out[5]: 1328908695.234567 

In [6]: datetime.datetime.fromtimestamp(seconds) 
Out[6]: datetime.datetime(2012, 2, 10, 15, 18, 15, 234567) 

Тогда вы можете просто иметь дело с объектом даты и времени, который позволит вам разобрать вещи правильно.