用法:
tzinfo.dst(dt)
返回夏令时 (DST) 调整,作为
timedelta
对象或None
如果 DST 信息未知。如果 DST 无效,则返回
timedelta(0)
。如果 DST 生效,则将偏移量作为timedelta
对象返回(有关详细信息,请参阅utcoffset()
)。请注意,DST 偏移量(如果适用)已添加到utcoffset()
返回的 UTC 偏移量中,因此除非您有兴趣单独获取 DST 信息,否则无需查阅dst()
。例如,datetime.timetuple()
调用其tzinfo
属性的dst()
方法来确定应如何设置tm_isdst
标志,而tzinfo.fromutc()
调用dst()
来说明跨时区时的夏令时变化。tzinfo
子类的实例tz
对标准时间和日光时间进行建模,在这个意义上必须是一致的:tz.utcoffset(dt) - tz.dst(dt)
必须为每个
datetime
dt
和dt.tzinfo == tz
返回相同的结果 对于理智的tzinfo
子类,此表达式产生时区的 “standard offset”,它不应取决于日期或时间,而仅取决于地理位置.datetime.astimezone()
的实现依赖于此,但无法检测违规;确保它是程序员的责任。如果tzinfo
子类不能保证这一点,它可能能够覆盖tzinfo.fromutc()
的默认实现,以便与astimezone()
一起正常工作。dst()
的大多数实现可能看起来像以下两个之一:def dst(self, dt): # a fixed-offset class: doesn't account for DST return timedelta(0)
或者:
def dst(self, dt): # Code to set dston and dstoff to the time zone's DST # transition times based on the input dt.year, and expressed # in standard local time. if dston <= dt.replace(tzinfo=None) < dstoff: return timedelta(hours=1) else: return timedelta(0)
dst()
的默认实现引发NotImplementedError
。在 3.7 版中更改:DST 偏移量不限于整数分钟。
相关用法
- Python datetime.tzinfo.fromutc用法及代码示例
- Python datetime.tzinfo()用法及代码示例
- Python datetime.tzname()用法及代码示例
- Python datetime.time.fromisoformat用法及代码示例
- Python datetime.timetz()用法及代码示例
- Python datetime.time.isoformat用法及代码示例
- Python datetime.timedelta用法及代码示例
- Python datetime.timedelta()用法及代码示例
- Python datetime.datetime.ctime用法及代码示例
- Python datetime.utcoffset()用法及代码示例
- Python datetime.datetime.fromisoformat用法及代码示例
- Python datetime.datetime.timetuple用法及代码示例
- Python datetime.date.isoformat用法及代码示例
- Python datetime.date.replace用法及代码示例
- Python datetime.date.ctime用法及代码示例
- Python datetime.datetime.isoformat用法及代码示例
- Python datetime.date.fromisoformat用法及代码示例
- Python datetime.date.isocalendar用法及代码示例
- Python datetime.datetime.astimezone用法及代码示例
- Python datetime astimezone()用法及代码示例
注:本文由纯净天空筛选整理自python.org大神的英文原创作品 datetime.tzinfo.dst。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。