當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python datetime.tzinfo.fromutc用法及代碼示例


用法:

tzinfo.fromutc(dt)

這是從默認的datetime.astimezone() 實現中調用的。從那裏調用時,dt.tzinfoself ,並且 dt 的日期和時間數據將被視為表示 UTC 時間。 fromutc() 的目的是調整日期和時間數據,以 self 的本地時間返回等效的日期時間。

大多數tzinfo 子類應該能夠毫無問題地繼承默認的fromutc() 實現。它足以處理fixed-offset 時區,以及同時考慮標準時間和日光時間的時區,即使 DST 轉換時間在不同年份有所不同。默認 fromutc() 實現可能無法在所有情況下正確處理的時區示例是標準偏移量(來自 UTC)取決於經過的特定日期和時間,這可能出於政治原因而發生。 astimezone()fromutc() 的默認實現可能不會產生您想要的結果,如果結果是跨越標準偏移量發生變化的時間之一。

跳過錯誤情況的代碼,默認 fromutc() 實現的行為如下:

def fromutc(self, dt):
    # raise ValueError error if dt.tzinfo is not self
    dtoff = dt.utcoffset()
    dtdst = dt.dst()
    # raise ValueError if dtoff is None or dtdst is None
    delta = dtoff - dtdst  # this is self's standard offset
    if delta:
        dt += delta   # convert to standard local time
        dtdst = dt.dst()
        # raise ValueError if dtdst is None
    if dtdst:
        return dt + dtdst
    else:
        return dt

相關用法


注:本文由純淨天空篩選整理自python.org大神的英文原創作品 datetime.tzinfo.fromutc。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。