【发布时间】:2022-01-05 14:32:42
【问题描述】:
我想将不同国家的当地时间转换为 UTC 时间。我正在尝试用这种方式做到这一点:
tz = pytz.timezone('Europe/Berlin')
x=tz.normalize(tz.localize(datetime.now())).astimezone(pytz.utc)
它给了我正确的结果。但是当我尝试为 Europe/Lisbon 这样做时,我得到了错误的结果。这可能是一个问题还是我做错了什么?两个时区之间没有差异,但它给了我 3 小时的差异,如下所示。
提前致谢。
【问题讨论】:
-
您的本地机器时区是
Europe/Lisbon对吧? -
可以用
code格式的文本替换图片吗?将代码本身扩展为完整的 minimal reproducible example,包含所有导入和固定的参考时间,也将提高此问题的可重用性。 -
@PSSolanki 实际上没有,我有来自里斯本的数据,我想将其转换为 UTC。我的时区是欧洲/伊斯坦布尔。
-
你从哪里得到这些数据?为什么您使用
datetime.now()进行测试,而您应该使用示例日期时间,对吧? -
我已经搜索过,但找不到其他方法。我猜 astimezone 函数将其转换为 utc。
标签: python python-3.x datetime time pytz