Конвертируем строку времени (в микросекундах) в дату и время
Я долго боролся с этим, используя strftime()
, который поддерживает %f
(для вывода микросекунд), а не strptime()
. Этот метод не подчиняется интуиции, но, к счастью, в версии 2.6 его пофиксили:
$ python2.6
>>> import datetime
>>> datetime.datetime.strptime('22:57:39.101941', '%H:%M:%S.%f')
datetime.datetime(1900, 1, 1, 22, 57, 39, 101941)
Но на моих серверах у меня всё ещё стоит версия 2.5, что мне делать?
Я нашёл хороший ответ на этот вопрос на StackOverflow:
$ python2.5
>>> from dateutil.parser import parser
>>> p = parser()
>>> p.parse('22:57:39.101941')
datetime.datetime(2021, 2, 3, 22, 57, 39, 101941)
В этом коде стоит текущая дата (вместо 1900-01-01), поэтому у него правильно распознаны микросекунды (так как мне нужна разница во времени, мне нравится этот вариант).
+1
+1
+1
+1
+1