Объект данных PYTZ не обрабатывается нормально библиотекой pendulum

У меня есть 2 даты из часового пояса "Америка/Сантьяго":

  • 2022-09-04 00:00:00
  • 2022-09-04 01:00:00

В "Америке/Сантьяго" они обычно меняют час 4 сентября. Это происходит в 2022-09-04 00h они говорят, что это 2022-09-04 01:00:00. Но в этом году из-за выборов смена часа была отложена на неделю. Поэтому 4-го числа время не меняется.

Мне нужно преобразовать чилийское время в UTC. Поэтому:

Используя обновленную версию библиотеки pytz, мне удалось преобразовать это в объект времени в "UTC":

  • 2022-09-04 00:00:00-04:00
  • 2022-09-04 01:00:00-04:00

В старой версии, которую я использовал, это не учитывалось, потому что я не знал об этом.

Проблема в том, что я хочу генерировать время и время окончания, поэтому скрипт, который я просматриваю со своего факультета, использует следующую библиотеку маятника:

def my_next_hour(datetime_obj):
    //datetime_obj=2022-09-04 00:00:00-04:00
    new_dt = pendulum.instance(datetime_obj).add(hours=1)
    return new_dt

На выходе я получаю следующее:

  • 2022-09-04T02:00:00-03:00
  • 2022-09-04T02:00:00-03:00

Как видно, на первой записи я не знаю, почему он меняет -4 на -3. В любом случае, в конце концов, это делает свою работу. Но, как следствие, во второй записи я не получаю плюсовой час.

Итак, я прошу понять, как загрузить pendulum для возможного обновления также и библиотеки так же, как это сделал pytz, чтобы исправить изменение времени на неделю позже, чем обычно.

Я не хочу, если могу избежать этого, использовать другую библиотеку, потому что код, который я просматриваю, использует в других частях также и библиотеку, поэтому идея заключается в том, чтобы исправить библиотеку, а не каждую операцию.

Спасибо

Вернуться на верх