现在是使用DST的特定时区吗?

发布于 2021-01-29 18:02:02

如何获取我的python脚本,以检查是否现在使用DST将特定时区存储在变量中?我的服务器设置为UTC。所以我说例如

zonename = Pacific/Wallis

我想运行有关现在是否正在使用DST的查询,并让返回的结果为true或false。

关注者
0
被浏览
51
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。
    from pytz import timezone
    from datetime import datetime
    
    zonename = "Pacific/Wallis"
    now = datetime.now(tz=timezone(zonename))
    dst_timedelta = now.dst()
    ### dst_timedelta is offset to the winter time, 
    ### thus timedelta(0) for winter time and timedelta(0, 3600) for DST; 
    ### it returns None if timezone is not set
    
    print "DST" if dst_timedelta else "no DST"
    

    替代方法是使用:

    now.timetuple().tm_isdst
    

    可以具有以下三个值之一:0没有DST,没有1DST和-1未设置时区。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看