为什么我的 Python 时间戳到日期时间的转换是错误的?
Why my Python timestamp to datetime conversion is wrong?
门户 epochconverter.com 将时间戳 1531423084013 转换为更正日期 2018 年 7 月 12 日星期四 3:18:04.013 PM GMT-04:00 DST。但是在 Python 2.7.12 中,我得到的下面是错误的
>>> timestamp=1531423084013
>>> time.ctime(timestamp).rsplit(' ', 1)[0]
'Wed Nov 12 00:06:53'
如何正确设置?
1531423084013
是毫秒而不是秒。
正如您从 epochconverter.com 中看到的那样,小时是:3:18:04.013
,所以秒部分是 4.013
,该站点以秒和毫秒为单位处理时间(似乎输入有 13 位数字)现在大约有 10 个)。
但是 python 中的 time.ctime() 仅处理以秒为单位的时间,这就是为什么当您输入以毫秒为单位的时间时得到错误答案的原因(在我的系统中它会抛出超出范围)。
所以你必须将你的时间以毫秒为单位除以 1000 :
time.ctime(1531423084)
'Thu Jul 12 21:18:04 2018'
(我的时区是UTC+0200)
门户 epochconverter.com 将时间戳 1531423084013 转换为更正日期 2018 年 7 月 12 日星期四 3:18:04.013 PM GMT-04:00 DST。但是在 Python 2.7.12 中,我得到的下面是错误的
>>> timestamp=1531423084013
>>> time.ctime(timestamp).rsplit(' ', 1)[0]
'Wed Nov 12 00:06:53'
如何正确设置?
1531423084013
是毫秒而不是秒。
正如您从 epochconverter.com 中看到的那样,小时是:3:18:04.013
,所以秒部分是 4.013
,该站点以秒和毫秒为单位处理时间(似乎输入有 13 位数字)现在大约有 10 个)。
但是 python 中的 time.ctime() 仅处理以秒为单位的时间,这就是为什么当您输入以毫秒为单位的时间时得到错误答案的原因(在我的系统中它会抛出超出范围)。
所以你必须将你的时间以毫秒为单位除以 1000 :
time.ctime(1531423084)
'Thu Jul 12 21:18:04 2018'
(我的时区是UTC+0200)