![](/img/trans.png)
[英]how to convert a string datetime with unknown timezone to timestamp in python
[英]python convert timestamp with timezone to datetime
dt = "2021-06-10T10:56:58.189+0200"
是我的时间戳,我想将其转换为日期时间表示。 我使用以下代码来执行此操作:
d = dateutil.parser.parse(dt)
但我的 output 看起来像这样:
2021-06-10 10:56:58.189000+02:00
没有太大变化。 如何在我新创建的日期时间 object 中包含有关时区的信息。 我从文档中尝试了更多的东西,但我自己无法解决..
提前致谢。
请注意, +0200
是 UTC 偏移量,而不是时区(例如,“America/Los_Angeles”是时区)。 如果你想设置一个特定的时区,你可以这样做
from datetime import datetime
from zoneinfo import ZoneInfo
# you can do the parsing with the standard lib:
s = "2021-06-10T10:56:58.189+0200"
dt = datetime.strptime(s, "%Y-%m-%dT%H:%M:%S.%f%z")
# now set a time zone:
dt_tz = dt.astimezone(ZoneInfo("Europe/Berlin"))
print(dt_tz) # __str__ gives you ISO format
# 2021-06-10 10:56:58.189000+02:00
print(dt_tz.strftime("%Y-%m-%dT%H:%M:%S %Z")) # custom format
# 2021-06-10T10:56:58 CEST
print(repr(dt_tz)) # object representation; __repr__
# datetime.datetime(2021, 6, 10, 10, 56, 58, 189000, tzinfo=zoneinfo.ZoneInfo(key='Europe/Berlin'))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.