在Python(3.x)中的UTC中获取今天凌晨12点的简单方法?

时间:2020-07-06 18:51:51

标签: python-3.x unix-timestamp

我想用Python得出一天开始的时间(UTC午夜12点)。我找到了以下代码段:

today = datetime.date.today()
time.mktime((today.year, today.month, today.day, 0, 0, 0, 0, 0, 0))

但是结果产生的纪元导致今天的凌晨5点。我之所以需要它,是因为我有一个脚本执行一个SQL命令,该脚本需要使用纪元时间进行过滤(由于某种原因,我的查询在5分钟内完成通过本机SQL结果强制转换或提取纪元,而12秒则完成了) 。我猜我上面的代码段占用了我的本地机器时间。

1 个答案:

答案 0 :(得分:0)

您需要确定UTC当前的日期,然后替换时间位:

now = datetime.now(timezone.utc)
midnight = now.replace(hour = 0, minute = 0, second = 0, microsecond = 0)

要获取纪元,请使用midnight.timestamp()。这样可以确保在计算时间戳时应用时区信息。

相关问题