Python:如何检查日期是否不明确



有没有一种简单的方法,如何确定日期时间对象中的日期是否不明确——这意味着特定的日期时间可能在特定的时区中按常规时间变化的顺序存在两次?

下面是一个日期时间对象不明确的例子。在纽约时区,2017年11月5日凌晨2点,时间被移回凌晨1点。

import datetime
import dateutil
# definition of time zone
eastern_time = dateutil.tz.gettz('America/New_York')
# definition of ambiguous datetime object
dt = datetime.datetime(2017, 11, 5, 1, 30, 0, tzinfo=eastern_time)

我期待这样的事情。

>>> suggested_module.is_dt_ambiguous(dt)
True

您正在寻找datetime_ambiguous函数,它适用于向后转换(例如秋季DST结束(。

dateutil.tz.datetime_ambiguous(dt, eastern_time)

您可能还对datetime_exists感兴趣,它适用于正向转换(例如春季夏令时开始(。

最新更新