Python 3.7: преобразование строки с другим часовым поясом в дату - PullRequest
0 голосов
/ 07 сентября 2018

Я пытаюсь преобразовать строку в формат даты в Python.

Я использую следующее заявление

datetime_obj = datetime.datetime.strptime("Sun Aug 19 16:24:31 PDT 2018", "%a %b %d %H:%M:%S %Z %Y")

Однако я получаю сообщение об ошибке -

ValueError: данные времени 'Sun Aug 19 16:24:31 PDT 2018' не соответствуют формату '% a% b% d% H:% M:% S% Z% Y'

Если я удаляю часовой пояс из строки даты и строки формата, код работает отлично. Что заставляет меня верить, что проблема связана с часовым поясом, но я не уверен, какие действия следует предпринять. Я нахожусь в восточном часовом поясе, а часовой пояс в строке - в тихом часовом поясе.

Ценю любую помощь по этому вопросу.

1 Ответ

0 голосов
/ 07 сентября 2018

Как уже упоминалось в в этом ответе , вы можете использовать python-dateutil для этого:

>>> from dateutil import parser

>>> datetime_obj = parser.parse("Sun Aug 19 16:24:31 PDT 2018")
datetime.datetime(2018, 8, 19, 16, 24, 31)

Стандартный модуль даты и времени очень странно ведет себя при разборе часовых поясов, как я вижу, читая этот ответ в вопросе, связанном с аналогичной проблемой.

...