Проверяя модуль Zoneinfo в Python 3.9, я задавался вопросом, предлагает ли он также удобную опцию для получения местного часового пояса (настройки ОС) в Windows.
В GNU/Linux вы можете это сделать
from datetime import datetime
from zoneinfo import ZoneInfo
naive = datetime(2020, 6, 11, 12)
aware = naive.replace(tzinfo=ZoneInfo('localtime'))
но в Windows это выдает
ZoneInfoNotFoundError: «Часовой пояс не найден с ключом localtime»
так что мне все равно придется использовать стороннюю библиотеку? например
import time
import dateutil
tzloc = dateutil.tz.gettz(time.tzname[time.daylight])
aware = naive.replace(tzinfo=tzloc)
Поскольку time.tzname[time.daylight] возвращает локализованное имя (в моем случае немецкое, например «Mitteleuropäische Sommerzeit»), это тоже не работает:
aware = naive.replace(tzinfo=ZoneInfo(tzloc))
Есть мысли?
p.s. чтобы попробовать это на Python
Подробнее здесь: https://stackoverflow.com/questions/623 ... 9-zoneinfo