大纪元时间转换的年份错误

Year wrong on Epoch time conversion

我正在尝试使用 Python 转换纪元时间。然而,年份似乎总是不对。在下面的例子中,它应该是 2014.

import time
timestamp = time.strftime("%a, %d %b %Y %H:%M:%S +0000", 
                    time.localtime(1415219530834))

我做错了什么?

我得到这个结果:

Sat, 09 Jul 46816 16:20:34 +0000

你正在以毫秒为单位传递时间,但它应该以秒为单位。除以 1000

import time
timestamp = time.strftime("%a, %d %b %Y %H:%M:%S +0000", 
                    time.localtime(1415219530))

结果:

'Wed, 05 Nov 2014 15:32:10 +0000'

您已经传递了一个以毫秒为单位的时间戳,但是 localtime 需要一个以秒为单位的值。

time.localtime(1415219530834 / 1000)

您将在 Python 内获得以毫秒为单位的纪元。您需要在几秒钟内完成它才能正常工作。

类似

import time
mytime = 1415219530834
seconds = int(mytime/1000)
timestamp = time.strftime("%a, %d %b %Y %H:%M:%S +0000",time.localtime(seconds))

也试试这个

import datetime
datetime.datetime.fromtimestamp(your time in epoch/1000)

以纪元转换时间

int(yourtime.strftime("%s"))*1000