Время до даты в Python - PullRequest
       10

Время до даты в Python

3 голосов
/ 25 марта 2010

Привет, ребята, я пишу скрипт, который извлекает информацию из place.sqlite (история) и понял, что он хранит время в формате PRTime. Есть ли в Python метод, который может преобразовать это время даты, или я должен сделать это сам?

Ответы [ 2 ]

3 голосов
/ 25 марта 2010

PRTime - количество микросекунд с 1 января 1970 года (см. https://developer.mozilla.org/en/PRTime), поэтому просто сделайте это, чтобы получить время UTC

datetime.datetime(1970, 1, 1) + datetime.timedelta(microseconds=pr_time)

, например

print datetime.datetime(1970, 1, 1) + datetime.timedelta(microseconds=time.time()*1000*1000)

выход: * +1010 *

2010-03-25 13:30:02.243000
1 голос
/ 25 марта 2010

встроенного метода нет, но реализовать его довольно просто:

>>> t = 1221842272303080
>>> t /= 1e6
>>> t
1221842272.30308
>>> import datetime
>>> datetime.datetime.fromtimestamp(t)
datetime.datetime(2008, 9, 19, 17, 37, 52, 303080)

Результат - местное время, для UTC вы можете сделать:

>>> import time
>>> time.gmtime(t)
time.struct_time(tm_year=2008, tm_mon=9, tm_mday=19, tm_hour=16, tm_min=37, tm_sec=52, tm_wday=4, tm_yday=263, tm_isdst=0)

Это вывод py3k, он может немного отличаться в python 2.x

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...