Ini dipanggil dari implementasi datetime.astimezone() default. Ketika dipanggil dari situ, dt.tzinfo adalah self, dan data tanggal dan waktu dt dianggap menyatakan waktu UTC. Tujuan dari fromutc() adalah untuk menyesuaikan data tanggal dan waktu, mengembalikan tanggal waktu yang setara dalam waktu lokal diri.
tzinfo.fromutc(dt)
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