1、方法一
def utc_to_local(utc_time_str, utc_format='%Y-%m-%dT%H:%M:%S.%fZ'): local_tz = pytz.timezone('Asia/Shanghai') local_format = "%Y-%m-%d %H:%M:%S" utc_dt = datetime.strptime(utc_time_str, utc_format) local_dt = utc_dt.replace(tzinfo=pytz.utc).astimezone(local_tz) time_str = local_dt.strftime(local_format) return datetime.fromtimestamp(int(time.mktime(time.strptime(time_str, local_format))))
2、方法二
utc = "2018-07-17T08:48:31.151Z"
UTC_FORMAT = "%Y-%m-%dT%H:%M:%S.%fZ"
utcTime = datetime.datetime.strptime(utc, UTC_FORMAT)
localtime = utcTime + datetime.timedelta(hours=8)
print(localtime)
注解:
1、接收到的時間格式為UTC時間:2018-07-17T08:48:31.151Z
2、轉換成本地時間戳,並把轉換的時間戳通過 datetime.fromtimestamp() 方法轉換成本地時間“Asia/Shanghai”