При конвертации даты и использование timezone получаю неверный пояс. datetime
На сервере время -3 по мск, мне нужно чтобы при конвертации времени, оно было московское, сейчас в ручную делаю offset, можно ли использовать для этого datetime timezone, но вот он выдает мне не верный часовой пояс при конвертации. Т.е даже не так, при datetime.now() часовой пояс верный, а вот при конвертации нет
>>> tm = datetime.datetime.strptime('29.09.2022', '%d.%m.%Y').replace(tzinfo=pytz.timezone("Europe/Moscow"))
>>> tm.utcoffset()
datetime.timedelta(seconds=9000)
>>> tm = datetime.datetime.now(pytz.timezone("Europe/Moscow"))
>>> tm.utcoffset()
datetime.timedelta(seconds=10800)
Ответы (1 шт):
Автор решения: strawdog
→ Ссылка
Попробуйте провести локализацию времени, как рекомендуют разработчики pytz
ваш код:
tm = datetime.datetime.strptime('29.09.2022', '%d.%m.%Y').replace(tzinfo=pytz.timezone("Europe/Moscow"))
print(tm.utcoffset())
2:30:00
с локализацией:
tm = datetime.datetime.strptime('29.09.2022', '%d.%m.%Y').astimezone(pytz.timezone("Europe/Moscow"))
print(tm.utcoffset())
3:00:00