UTCNow 抵消 Python

UTCNow offsetting in Python

我该如何准确地将 datetime.utcnow() 返回的时间戳抵消任意时间(例如一天)?

例如:

now = datetime.utcnow().isoformat() + 'Z'

我需要上述抵消一天。当我的脚本进入夏令时转换时有一个小问题,但我不需要看到它,但是因为它今天加载它也死了,因为 python 脚本现在在今天的日期工作时出错。

要简单地在 UTC 上添加某个增量时间,请添加 timedelta:

from datetime import datetime, timedelta

now = (datetime.utcnow() + timedelta(days=3)).isoformat() + 'Z'

print(now)

输出:

2018-11-06T16:55:06.535804Z

有关 python 时区的更多信息,请访问 Python UTC datetime object's ISO format doesn't include Z (Zulu or Zero offset)

使用 3.7 datetime.strptimedatetime.strftime 甚至将 01:30 识别为 %z - 高达 3.6 冒号会使它崩溃:)