怎么把Zulu时间转换成纪元?

时间:2019-07-09 16:47:56

标签: python python-3.x time

文件中的时间戳为: 2019-07-09T16:33:45Z

如何在Python 3中将其转换为纪元时间?

最终,我想将Zulu时间戳与当前的EST时间进行比较(如果该时间早于当前时间)。

2 个答案:

答案 0 :(得分:0)

  1. 使用time.strptime()来解析您的日期字符串。
  2. 如果您使用的是当地时间,请使用time.mktime()获取您所在时区的Unix时间戳。或者,如果您正在使用UTC时间,请使用calendar.timegm()

示例:

import time
import calendar

timestamp = time.strptime("2019-07-09T16:33:45Z", "%Y-%m-%dT%H:%M:%SZ")
unix_time_local = time.mktime(timestamp)
unix_time_utc = calendar.timegm(timestamp)

答案 1 :(得分:0)

我对Zulu时间不熟悉,但是互联网暗示它与UTC相同。

还有其他日期/时间库(arrow是最近流行的库),但是在python3中,可以使用内置的datetime使用两个功能来完成此操作:strptime和{{3 }}

这是一个快速的示例解决方案:

import datetime
time_string = "2019-07-09T16:33:45Z"
parsed_datetime = datetime.strptime(time_string, "%Y-%m-%dT%H:%M:%SZ")
unixtime = parsed_datetime.timestamp()

请注意,datetime.timestamp()返回一个浮点数。

也许还需要注意,为了进行比较,甚至没有必要从datetime对象转换为unixtime-您可以直接比较两个dt1 < dt2之类的datetime对象。