【发布时间】:2020-03-08 06:58:48
【问题描述】:
我正在尝试将 UTC 时间戳转换为西班牙时区中的时间戳。
>>> import datetime as dt
>>> import pytz
>>> today = dt.datetime.utcfromtimestamp(1573516800)
datetime.datetime(2019, 11, 12, 0, 0)
>>> today.replace(tzinfo=pytz.timezone('Europe/Madrid')).timestamp()
1573517700.0
>>> today.replace(tzinfo=pytz.timezone('Etc/GMT+1')).timestamp()
1573520400.0
我很惊讶 Europe/Madrid 和 Etc/GMT+1 得到不同的结果。为什么是这样? Europe/Madrid 应该用不同的方式使用吗,或者它可能是一个错误?
【问题讨论】:
-
你试过
.astimezone(pytz.timezone('Europe/Madrid'))吗? -
@luigigi 是的。问题是
today.astimezone(pytz.timezone('Europe/Madrid')).timestamp()返回的时间戳与我开始时的时间戳相同
标签: python datetime timezone pytz