1

I am trying to add a timezone to a time without timezone. However, using 2 libraries gives 2 different results:

from datetime import datetime
import pytz
from zoneinfo import ZoneInfo

cur = datetime.now(tz=None)
print("utc,", cur) # -> 2023-02-24 17:28:20.574694

cur_tz = cur.replace(tzinfo=pytz.timezone('Asia/Dubai'))
print("dubai with pytz,", cur_tz) # -> 2023-02-24 17:28:20.574694+03:41

cur_tz = cur.replace(tzinfo=ZoneInfo('Asia/Dubai'))
print("dubai with zoneinfo,", cur_tz) # -> 2023-02-24 17:28:20.574694+04:00

The offset returned by pytz is 3hr 41 mins (incorrect) while the one returned by ZoneInfo is 4 hrs exactly (correct). What am I doing wrong with pytz?

Aizaz
  • 39
  • 7

0 Answers0