5.2 開發要點及案例講解
本節要點
- 時區轉換
課前準備
提前安裝pytz
pip install pytz
pip install --upgrade tencentcloud-sdk-python
課程內容
時區轉換
官方文件:點我查看
# Jodoo裏面的日期時間採用UTC標準時間,由於中國是東八區,所以看到的
# "2020-04-14T07:32:22.000Z" 會比現在 '2020-04-14 15:32:22'慢8小時
# 我們可以用pytz進行時區的轉換
import datetime
import pytz
# 轉換的幾個步驟
# UTC str -> UTC datetime -> 轉換時區 -> Local datetime -> Local str
def utc_to_local(utc_time_str, utc_format='%Y-%m-%dT%H:%M:%S.000Z'):
local_timezone = pytz.timezone('Asia/Shanghai')
local_format = "%Y-%m-%d %H:%M:%S"
utc_datetime = datetime.datetime.strptime(utc_time_str, utc_format)
local_datetime = utc_datetime.replace(tzinfo=pytz.utc).astimezone(local_timezone)
local_time_str = local_datetime.strftime(local_format)
return local_time_str
def local_to_utc(local_time_str, local_format = "%Y-%m-%d %H:%M:%S"):
local_timezone = pytz.timezone('Asia/Shanghai')
utc_format="%Y-%m-%dT%H:%M:%S.000Z"
local_datetime = datetime.datetime.strptime(local_time_str, local_format)
local_datetime = local_timezone.localize(local_datetime, is_dst=None)
utc_datetime = local_datetime.astimezone(pytz.utc)
utc_time_str = utc_datetime.strftime(utc_format)
return utc_time_str