Изменить системный часовой пояс с помощью Pytz

У меня есть часовой пояс в следующем формате: страна/город (например: Америка/Сан-Паулу). Я хочу изменить с помощью python часовой пояс моей системы (Win7), возможно ли это сделать с помощью Pytz и Datetime или вообще?

Благодарю вас !


person user180894    schedule 27.08.2013    source источник
comment
В Unix os.environ['TZ'] = 'America/Sao_Paulo'; time.tzset() изменяет местное время/дату/время для вашего процесса.   -  person jfs    schedule 27.03.2014


Ответы (1)


В общем, нет. Не существует прямого способа Python сделать это.

Это можно сделать, но вам придется прыгать через множество обручей:

  • Use CLDR data to translate the IANA zone to a Windows zone id.
  • Получите соответствующие разрешения безопасности Win32.
  • Вызов Win32 SetTimeZone API

Вызов функций Win32 из Python осуществляется через ctypes.

Вот пошаговое руководство, какие разрешения и вызовы Win32 нужно сделать, хотя это на С# в этом образце. Вам нужно будет перевести для Python.

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

person Matt Johnson-Pint    schedule 27.08.2013
comment
Спасибо, это было именно то, что я искал! - person user180894; 28.08.2013