【问题标题】:Converting EPOCH time stamps to date将 EPOCH 时间戳转换为日期
【发布时间】:2017-03-23 15:32:31
【问题描述】:

我有要与纪元时间戳一起分析的传感器陀螺仪数据。我想将时间戳分析为 HH-MM-SS 格式。因此,当我尝试转换时间戳时,结果时间不正确。以下是需要考虑的值。

| Time            | Gyro_X       | Gyro_Y      | Gyro_Z        |
|-----------------|--------------|-------------|---------------|
| 112802627681000 | 0.09686792   | 0.14810029  | 0.005777027   |
| 112802636065000 | 0.029674599  | 0.10087131  | 2.1168962E-5  |
| 112802636868000 | 0.029674599  | 0.10087131  | 2.1168962E-5  |
| 112802645721000 | -0.019805614 | 0.028886953 | -0.007304834  |
| 112802646541000 | -0.019805614 | 0.028886953 | -0.007304834  |
| 112802655003000 | -0.030801188 | -0.0493038, | -0.0048613725 |
| 112802656170000 | -0.030801188 | -0.0493038  | -0.0048613725 | 

正确的时间必须是 2014 年 7 月 20 日 16-20-31 GMT。我正在使用 python 在时间库的帮助下转换时间戳。

import time
y=time.strftime('%m/%d/%Y %H:%M:%S',  time.gmtime(112802646541000/1000000))

为了补充我的问题,正在使用 cellbots 数据记录器应用程序记录传感器数据。使用 Sensorevent.Timestamp 记录时间戳。所以,我想知道时间戳是否与这种方法有关。

【问题讨论】:

  • 你怎么确定那是正确的时间?我在 2005 年 9 月 29 日得到这个。
  • 您对时间戳了解多少?例如,相对于 GPS 纪元,它们是微秒吗?或者他们是不同的单位,还是不同的时代?如果没有这些信息(或两个不同的值和相应的 UTC 时间),一切都只是猜测。

标签: python unix timestamp epoch


【解决方案1】:

除以 10**6 得到 1973 年 7 月 29 日。除以 10**5 得到 2005 年 9 月 29 日。如果它们应该代表 2014 年 7 月 20 日,那么看起来这些数字不是基于1970 年 1 月 1 日的纪元。

【讨论】:

    【解决方案2】:

    我认为这个谜题的线索在于

    $ date -u -d "@$((112802627681000 / 65536))"
    Wed 17 Jul 15:51:41 UTC 2024
    

    因此,您的时间戳看起来是自 1960 年 1 月 1 日以来的定点 (48.16) 秒。

    你可能需要使用:

    datetime.datetime.fromtimestamp(s/65536 - 315619200)
    

    我通过计算 1960-01-01 和 1970-01-01 之间的秒数得到了最后一个幻数:

    $ date -u -d 1960-01-01 +%s
    -315619200
    

    【讨论】:

    • 仍有一点点差异:这给了17 July 2014 16:51:41。谁能解释这三天,并完成这个答案?
    【解决方案3】:
    import pytz, datetime
    s = 112802646541000/1000000
    print(datetime.datetime.fromtimestamp(s).strftime('%d %B %Y %H:%M:%S'))
    

    【讨论】:

    • 虽然这段代码 sn-p 可以解决问题,包括解释 really helps 以提高您的帖子质量。请记住,您正在为将来的读者回答问题,而不仅仅是现在提问的人!请edit您的答案添加解释,并说明适用的限制和假设。
    • 另外,该代码给出的是 1973 年 7 月 29 日。除以 100000 而是得到 2005 年 9 月 29 日,更接近,但仍然没有雪茄。
    猜你喜欢
    • 2015-08-19
    • 2017-09-01
    • 1970-01-01
    • 2012-04-01
    • 2017-06-03
    • 2011-10-09
    • 2019-12-24
    • 2014-06-10
    • 1970-01-01
    相关资源
    最近更新 更多