def dst(self, dt):
    return timedelta(hours=1) if self.isdst else timedelta(0)

def tzname(self, dt):
    return self.name
GMT = Zone(0, False, 'GMT')
EST = Zone(-5, False, 'EST')
print(datetime.utcnow().strftime('%m/%d/%Y %H:%M:%S %Z'))
print(datetime.now(GMT).strftime('%m/%d/%Y %H:%M:%S %Z'))
print(datetime.now(EST).strftime('%m/%d/%Y %H:%M:%S %Z'))
t = datetime.strptime('2011-01-21 02:37:21', '%Y-%m-%d %H:%M:%S')
t = t.replace(tzinfo=GMT)
print(t)
print(t.astimezone(EST))
Python – преобразовать строку даты и времени UTC в локальную дату и время