# here are a few ways to convert time zone from datetime import datetime from dateutil import tz # METHOD 1: Hardcode zones: from_zone = tz.gettz('UTC') to_zone = tz.gettz('America/New_York') # METHOD 2: Auto-detect zones: from_zone = tz.tzutc() to_zone = tz.tzlocal() # utc = datetime.utcnow() utc = datetime.strptime('2011-01-21 02:37:21', '%Y-%m-%d %H:%M:%S') # Tell the datetime object that it's in UTC time zone since # datetime objects are 'naive' by default utc = utc.replace(tzinfo=from_zone) # Convert time zone central = utc.astimezone(to_zone)
Here is what the above code is Doing:
1. We create a datetime object in the UTC time zone.
2. We tell Python that the datetime object is in the UTC time zone.
3. We convert the datetime object to the US/Central time zone.
4. We print the converted datetime object.