I am getting two different time offset using US/Eastern pytz timezone.
>>> from pytz import timezone
import datetime
tz = timezone('US/Eastern')
>>> tz.localize(datetime.datetime(2021, 11, 1, 21, 1, 0))
2021-11-01 21:01:00-04:00
>>> tz.localize(datetime.datetime(2020, 11, 1, 21, 1, 0))
2020-11-01 21:01:00-05:00
Why am I getting different time offsets for the same timezones?
US/Eastern timezone switch to standard/winter time in first Sunday of November. Which in 2020 was 1 November 2020, and in 2021 was 7 November 2021 i.e. on 1 November 2021 DST was still on.
You can check Is a specific timezone using DST right now? on how to check if DST is on.