Как преобразовать строку даты UTC в объект datetime с учетом часового пояса в Python3? - PullRequest
0 голосов
/ 15 июня 2019

У меня есть строка даты в формате UTC, представленная как:

ds = "2019-06-15 17:18:06 UTC"

Я пытаюсь преобразовать его в объект datetime Python utc, например:

d = datetime.strptime(ds,'%Y-%m-%dT%H:%M:%SZ')

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

ValueError: time data '2019-06-15 17:18:06 UTC' does not match format '%Y-%m-%dT%H:%M:%SZ'

Так какой правильный формат для передачи, чтобы я мог получить объект datetime в часовом поясе UTC?

Ответы [ 2 ]

0 голосов
/ 15 июня 2019

Использовать формат %Y-%m-%d %H:%M:%S %Z

Пример:

import datetime
import pytz

ds = "2019-06-15 17:18:06 UTC"
nDate = datetime.datetime.strptime(ds,'%Y-%m-%d %H:%M:%S %Z') 
timezone = pytz.timezone(ds.split()[-1])
d_aware = timezone.localize(nDate)
print(d_aware)
print(d_aware.tzinfo) 

Выход:

2019-06-15 17:18:06+00:00
UTC
0 голосов
/ 15 июня 2019

Используемая в настоящее время строка формата не соответствует предоставленному вами формату строки даты и времени.Вот почему его ошибка метания.

 datetime.strptime(ds,'%Y-%m-%d %H:%M:%S UTC')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...