pytz
Python historical timezone library and database
...It addresses a major limitation of Python’s built-in datetime.tzinfo by providing consistent support for daylight-saving transitions, historical offset changes, and ambiguous times (such as the end of DST). With pytz, developers can convert naïve datetime objects into timezone-aware ones, shift between timezones, and safely perform arithmetic across DST boundaries with methods like localize() and normalize(). Although Python 3.9 and newer include better built-in timezone support (via zoneinfo and external packages like tzdata), pytz remains widely used—especially in legacy codebases or in environments where backward compatibility matters.