我有一个关于python的time
模块的问题(没有问datetime
,pytz
,或任何其他模块)。
如何使用time
模块确定当前是否为我当前所在地点和日期的夏令时 (DST)?
关于此主题的文档似乎含糊不清。根据我对文档字符串措辞的解释,我会认为如果当前是标准时间(冬季),time.daylight
将是 0,如果现在是夏令时(夏季),
Nonzero if a DST timezone is defined.
但是,似乎这不是time.daylight
所做的!目前这里是冬季(标准)时间,但time.daylight == 1
如何使用time
模块来确定它当前是否为 DST?还是这是不可能的?谢谢!
如何使用
time
模块确定当前是否为我当前所在地点和日期的夏令时 (DST)?
假设您的计算机设置为正确的时区:
import time
is_dst = time.daylight and time.localtime().tm_isdst > 0
这适用于我的系统。也许您的操作系统已设置为 DST?
pytz 是在 python 中一致地处理时区、本地时间转换和 DST 的好方法。很抱歉没有发布实际的使用示例,但最好浏览模块文档以查看 DST 转换的各种陷阱和用例。