Вопрос по python, pandas, datetime, timezone, timezone-offset – Спасибо за ваше решение. Я действительно надеялся, что для этого есть встроенный метод. Я не могу представить, что это необычное намерение, не так ли?

1

аданной строки даты, такой как2009-01-01T12:00:00+0100 Я хочу UTC объект даты и времени.

from datetime import datetime 
datetime.strptime("2013-03-21T14:19:42+0100", "%Y-%m-%dT%H:%M:%S%z")

возвращается

datetime.datetime(2013, 3, 21, 14, 19, 42, tzinfo=datetime.timezone(datetime.timedelta(0, 3600)))

Я не могу поверить, что нет никакого метода вdatetime или жеpandas для применения смещения, связанного с часовым поясом, к дате и времени, возвращая обычное время и дату UTC.

Как я могу применитьtzinfo смещение / дельта, так что результирующий часовой пояс будет простым UTC (tzinfo=None)?

Ваш Ответ

1   ответ
2

Это немного грязно, но это работает

from datetime import datetime
orig_dt = datetime.strptime("2013-03-21T14:19:42+0100", "%Y-%m-%dT%H:%M:%S%z")  # datetime.datetime(2013, 3, 21, 14, 19, 42, tzinfo=datetime.timezone(datetime.timedelta(0, 3600)))
utc_time_value = orig_dt - orig_dt.utcoffset()
utc_dt = utc_time_value.replace(tzinfo=None)  # datetime.datetime(2013, 3, 21, 13, 19, 42)
Спасибо за ваше решение. Я действительно надеялся, что для этого есть встроенный метод. Я не могу представить, что это необычное намерение, не так ли? Michael Dorner

Похожие вопросы