Как я могу преобразовать часовой пояс IANA/Olson в POSIX.1?Python

Программы на Python
Ответить
Anonymous
 Как я могу преобразовать часовой пояс IANA/Olson в POSIX.1?

Сообщение Anonymous »

Я пишу код хронометража для ESP32 на языке C. Я хочу отображать время в часовом поясе, определенном во время сборки. В документации ESP32 показано, как применить часовой пояс, но формат часового пояса должен быть в формате POSIX.1, например. для Сиднея, Австралия, это:

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

AEST-10AEDT,M10.1.0/2,M4.1.0/2
Я хотел бы иметь возможность указывать часовой пояс во время сборки в качестве имени базы данных IANA/Olson, например. Australia/Sydney и преобразуйте его в формат POSIX.1 для использования в коде. Система сборки ESP32 использует CMake и файл sdkconfig, поэтому это означает либо макрос, определенный через CMake, либо строку, вставленную в sdkconfig, например.

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

CONFIG_TIMEZONE=AEST-10AEDT,M10.1.0/2,M4.1.0/2
Есть ли таблица или база данных, в которой я мог бы это найти, или кроссплатформенная утилита, которая может выполнить преобразование? Инструментальная цепочка ESP IDF в значительной степени опирается на Python (2.7), поэтому даже что-то на Python может работать. Чем меньше сложностей с интеграцией этого в сборку, тем лучше. Я просто не могу найти ничего вроде автономных утилит или кроссплатформенных библиотек, которые можно было бы легко обернуть и вызвать из CMake.

(Я знаю, что формат POSIX.1 содержит меньше информации, чем данные IANA, и я был бы доволен просто выражением POSIX.1, которое дает текущее поведение относительно смещения UTC и летнего времени.)

Подробнее здесь: https://stackoverflow.com/questions/615 ... to-posix-1
Ответить

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

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

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

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

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