我想知道如何在python中将ISO日期更改为UTC

时间:2019-03-20 10:08:27

标签: python date

我想知道如何在python(2.6.6)中将ISO日期转换为UTC

date_dob = getattr(model, value)
                 tz=pytz.UTC
                 date_dob =tz.localize(date_dob)
                 print(date_dob) 

这里date_dob映射到值为ISODate(“ 1989-08-27T00:00:00.000Z”)的数据库属性。我的要求是将其转换为UTC日期时间。

输出1989-08-27 00:00:00 + 00:00,我认为它不是UTC值

1 个答案:

答案 0 :(得分:0)

这是您想要的吗?

import dateutil.parser
datestring = '1989-08-27T00:00:00.000Z'
yourdate = dateutil.parser.parse(datestring)
print(yourdate)


from datetime import datetime
from pytz import timezone
date_str = '1989-08-27T00:00:00.000Z'
print(date_str)

datetime_obj = datetime.strptime(date_str, "%Y-%m-%dT%H:%M:%S.%fZ")
datetime_obj_utc = datetime_obj.replace(tzinfo=timezone('UTC'))
print(datetime_obj_utc.strftime("%Y-%m-%d %H:%M:%S %Z%z"))

datetime_obj_utc = datetime_obj.replace(tzinfo=timezone('US/Eastern'))
print(datetime_obj_utc.strftime("%Y-%m-%d %H:%M:%S %Z%z"))