Python - check if a datetime is daylight saving time

>>> from datetime import datetime
>>> import tzlocal
>>> import pytz


>>> tz = tzlocal.get_localzone()
>>> tz
<DstTzInfo 'America/New_York' LMT-1 day, 19:04:00 STD>
>>>
>>> dt1 = datetime(2020, 3, 8, 2, 0, 0)
>>> a_dt1 = tz.localize(dt1)
>>> a_dt1
datetime.datetime(2020, 3, 8, 2, 0, tzinfo=<DstTzInfo 'America/New_York' EST-1 day, 19:00:00 STD>)
>>> a_dt1.dst()
datetime.timedelta(0)
>>> dt2 = datetime(2020, 3, 8, 2, 30, 0)
>>> a_dt2 = tz.localize(dt2)
>>> a_dt2
datetime.datetime(2020, 3, 8, 2, 30, tzinfo=<DstTzInfo 'America/New_York' EST-1 day, 19:00:00 STD>)
>>> a_dt2.dst()
datetime.timedelta(0)
>>> dt3 = datetime(2020, 3, 8, 3, 0, 0)
>>> a_dt3 = tz.localize(dt3)
>>> a_dt3
datetime.datetime(2020, 3, 8, 3, 0, tzinfo=<DstTzInfo 'America/New_York' EDT-1 day, 20:00:00 DST>)
>>> a_dt3.dst()
datetime.timedelta(seconds=3600)
>>> dt4 = datetime(2020, 3, 8, 7, 0, 0)
>>> a_dt4 = tz.localize(dt4)
>>> a_dt4
datetime.datetime(2020, 3, 8, 7, 0, tzinfo=<DstTzInfo 'America/New_York' EDT-1 day, 20:00:00 DST>)
>>> a_dt4.dst()
datetime.timedelta(seconds=3600)
>>>

猜你喜欢

转载自www.cnblogs.com/zhangzhihui/p/12818587.html