Получение разницы между двумя датами в разных часовых поясахPython

Программы на Python
Ответить
Anonymous
 Получение разницы между двумя датами в разных часовых поясах

Сообщение Anonymous »

Я пытаюсь получить разницу между двумя датами, но даты находятся в разных часовых поясах, и я не могу сделать это правильно. Для этого я использую datetime и pytz.
Две даты: «сейчас» и дата, которую я получаю из файла JSON. Дата, которую я получаю из JSON, выглядит следующим образом

Код: Выделить всё

"dt": "2026-02-27T19:30:00Z"
Дата в файле JSON всегда находится в будущем и, кажется, находится в формате UTC, а мое «сейчас» — в CET, и я хочу, чтобы все работало для моего часового пояса CET. Итак, вот что я пытаюсь:

Код: Выделить всё

#Convert the JSON file date to a datetime object
dateJson = datetime.datetime.strptime(jsonfile["dt"], "%Y-%m-%dT%H:%M:%SZ")

#Convert dateJson from UTC to CET
dateJson = pytz.timezone("CET").localize(dateJson)

#Get "now"
dateNow = datetime.datetime.now()

#Convert dateNow to offset-aware
dateNow = pytz.timezone("CET").localize(dateNow)

#Calculate the delta:
timeDelta = dateJson - dateNow

print(timeDelta)
Я получаю результат, но он всегда отличается от должного на 2 часа. Думаю, я неправильно понимаю, как работают все эти часовые пояса. Может быть, кто-нибудь сможет мне помочь? Спасибо :)

Подробнее здесь: https://stackoverflow.com/questions/798 ... -timezones
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»