[英]Local time to UTC
'v' 是從數據庫讀取的 python 日期時間 object - '2020-09-24 00:00:00'
我想存儲在祖魯語的 LDAP 中——所以“2020-09-24 07:00:00”——因為我位於洛杉磯。
v = v.strftime('%Y%m%d%H%M%SZ') - 直接轉換為 20200924000000Z(不是 20200924070000Z)。
這是正確的行為嗎? 如果沒有,在注入 LDAP 之前,我如何最好地隱蔽時間讀取 UTC?
'v' 是從數據庫讀取的 python datetime 對象 - '2020-09-24 00:00:00'
我想存儲在祖魯語的 LDAP 上面 - 所以'2020-09-24 07:00:00' - 因為我位於洛杉磯。
v = v.strftime('%Y%m%d%H%M%SZ') - 直接轉換為 20200924000000Z(不是 20200924070000Z)。
這是正確的行為嗎? 如果沒有,在注入 LDAP 之前,如何最好地將時間讀取到 UTC?
fromisoformat
,這比strptime
更 有效由於 pytz 將隨着 Python 3.9 的發布而被棄用,我建議使用dateutil 。 使用Python 3.9,您將擁有用於此類操作的區域信息。
from datetime import datetime
from dateutil.tz import gettz
s = '2020-09-24 00:00:00'
dt = datetime.fromisoformat(s)
# set time zone
dt = dt.replace(tzinfo=gettz('US/Pacific'))
# to UTC
dt = dt.astimezone(gettz('UTC'))
# to string
out = dt.strftime('%Y%m%d%H%M%SZ')
# '20200924070000Z'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.