为什么所有这些时间戳都来自2011年?

时间:2017-04-22 20:45:35

标签: timestamp unix-timestamp

我不确定13136436720872065的格式是什么,所以我将它除以10,直到它成功 - 但现在我所有的答案都来自2011年,尽管我知道时间戳不应该是#39}是的!

>>> time.gmtime(13136436720872065/10**7)
time.struct_time(tm_year=2011, tm_mon=8, tm_mday=18, tm_hour=5, tm_min=1, tm_sec=12, tm_wday=3, tm_yday=230, tm_isdst=0) 

1 个答案:

答案 0 :(得分:-1)

您要转换的时间戳实际上是Windows时间戳,而不是unix时间戳。

    自1970年1月1日以来,
  • Unix 时间戳以秒为单位。有时您会遇到毫秒(x1000)作为格式。
  • Windows 时间戳自1600年1月1日起以毫秒为单位。

正确的转换是:

>>> datetime.datetime(1601,1,1) + datetime.timedelta(microseconds=13136436720872065)
datetime.datetime(2017, 4, 12, 2, 12, 0, 872065)