Python 将长整型时间戳转换为日期/时间

Python 将长整型时间戳转换为日期/时间,python,sqlite,datetime,time,timestamp,Python,Sqlite,Datetime,Time,Timestamp,我使用连接chrome'History'文件的sqlite3进行分析。但是有上次访问时间的数据,也就是时间戳,但我不知道如何将其更改为实时。 我这样测试: 2012-04-18 23:22:11.084300 (utctime) 2012-04-19 01:22:11.084300 (myPC time) 12,979,264,931,952,304 (the time stamp in the data) >>> import datetime >>>

我使用连接chrome'History'文件的sqlite3进行分析。但是有上次访问时间的数据,也就是时间戳,但我不知道如何将其更改为实时。 我这样测试:

2012-04-18 23:22:11.084300 (utctime)

2012-04-19 01:22:11.084300 (myPC time)

12,979,264,931,952,304 (the time stamp in the data)
>>> import datetime
>>> epoch_start = datetime.datetime(1601, 1, 1)
>>> delta = datetime.timedelta(microseconds=12979264931952304)
>>> epoch_start + delta
datetime.datetime(2012, 4, 18, 23, 22, 11, 952304)
我几乎同时打印了utctime和点击了一个网站。我得到了上面的统计数据。12979264931952304是长整数,因此不可能使用正常的转换方式


如何将时间戳转换为日期?

它存储的时间戳是自1601年1月1日UTC午夜以来的微秒数。要将此时间转换为当前时间,您可以在以下帮助下将微秒数添加到历元日期:

2012-04-18 23:22:11.084300 (utctime)

2012-04-19 01:22:11.084300 (myPC time)

12,979,264,931,952,304 (the time stamp in the data)
>>> import datetime
>>> epoch_start = datetime.datetime(1601, 1, 1)
>>> delta = datetime.timedelta(microseconds=12979264931952304)
>>> epoch_start + delta
datetime.datetime(2012, 4, 18, 23, 22, 11, 952304)
要转换为本地时区,您可以使用(请注意,我当前是UTC-4,而您看起来是UTC+2):