How to convert time to different formats
from datetime import datetime
import time
import calendar
"""
Converting to strings
"""
# datetime object to string
datetime_obj = datetime(2015, 6, 24, 7, 45, 0)
date_str = datetime_obj.strftime("%Y-%m-%d %H:%M:%S")
# Wrapping in str() gives
date_str2 = str(datetime_obj)
print(date_str)
print(date_str2)
# time tuple to string
time_tuple = (2015, 6, 24, 7, 45, 0, 0, 0, 0)
date_str = time.strftime("%Y-%m-%d %H:%M:%S", time_tuple)
print(date_str)
"""
Converting to datetime object
"""
# time tuple to datetime object
time_tuple = (2015, 6, 24, 7, 45, 0)
datetime_obj = datetime(*time_tuple)
print(repr(datetime_obj))
# date string to datetime object
date_str = "2015-06-24 07:45:00"
datetime_obj = datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S")
print(repr(datetime_obj))
# timestamp to datetime object in local time
timestamp = 1434481600.123456
datetime_obj = datetime.fromtimestamp(timestamp)
print(repr(datetime_obj))
# timestamp to datetime object in UTC
timestamp = 1434481600.123456
datetime_obj = datetime.utcfromtimestamp(timestamp)
print(repr(datetime_obj))
"""
Converting to timetuples
timetuple(year, month, dayofmonth, hour, minute, second, weekday, dayofyear, dst)
"""
# datetime object to time tuple
datetime_obj = datetime(2015, 6, 24, 7, 45, 0)
time_tuple = datetime_obj.timetuple()
print(repr(time_tuple))
# string to time tuple
date_str = "2015-06-24 07:45:00"
time_tuple = time.strptime(date_str, "%Y-%m-%d %H:%M:%S")
print(repr(time_tuple))
# timestamp to time tuple in UTC
timestamp = 1434481600.123456
time_tuple = time.gmtime(timestamp)
print(repr(time_tuple))
# timestamp to time tuple in local time
timestamp = 1434481600.123456
time_tuple = time.localtime(timestamp)
print(repr(time_tuple))
"""
Converting to timestamps
"""
# time tuple in local time to timestamp
time_tuple = (2015, 6, 24, 7, 45, 0, 0, 0, 0)
timestamp = time.mktime(time_tuple)
print(repr(timestamp))
# time tuple in utc time to timestamp
time_tuple_utc = (2015, 6, 24, 7, 45, 0, 0, 0, 0)
timestamp_utc = calendar.timegm(time_tuple_utc)
print(repr(timestamp_utc))