datetime.fromtimestamp() - 返回我的本地时区而不是 GMT

Mil*_*ano 4 python datetime gmt

我在转换timestampGMT. 据我所知,它timestamp总是及时的GMT,所以我期望datetime.fromtimestamp返回GMT或时区感知的日期时间,但它返回我的本地(布拉迪斯拉发/布拉格)日期时间。

import datetime
datetime.datetime.fromtimestamp(1566720000)
datetime.datetime(2019, 8, 25, 10, 0)
Run Code Online (Sandbox Code Playgroud)

但根据纪元转换器,它是

GMT:2019 年 8 月 25 日星期日上午 8:00:00

编辑:datetime.datetime.fromtimestamp(1566720000).tzinfo不返回任何内容,因此它不知道 tz 。

你知道问题出在哪里吗?

小智 5

fromtimestamp() 返回本地日期和时间。如果需要识别 tz,则必须指定参数 tz:

\n\n

https://docs.python.org/3/library/datetime.html#datetime.datetime.fromtimestamp

\n\n
\n

返回与 POSIX 时间戳对应的本地日期和时间,例如 time.time() 返回的。如果可选参数 tz 为 None 或未指定,则时间戳将转换为平台\xe2\x80\x99s 本地日期和时间,并且返回的日期时间对象是朴素的。

\n
\n\n

如果您需要 UTC 格式的日期时间对象,请改用 utcfromtimestamp:

\n\n
datetime.utcfromtimestamp(timestamp)\n
Run Code Online (Sandbox Code Playgroud)\n