使用 Python 的日期时间模块,我可以得到 UTC-11 当前的年份吗?



我想获得UTC-11时区(进入新年的最后一个时区)当前所在的年份,但我不确定如何做到这一点。

我可以访问pytz库,以及Django的新timezone模块,我使用时区感知,UTC datetime对象。

最简单的方法是完全跳过时区处理,只使用timedelta(hours=11)datetime中减去并查看year属性。

>>> (datetime.datetime.utcnow() - datetime.timedelta(hours=11)).year
2012

实际上,时区比这更棘手…您可能有相同偏移量的时区,但在节电日期和此类(甚至更恶劣的行为:https://stackoverflow.com/a/6841479/289011)

时设置不同。

我认为对于这种特殊情况,您最好使用:

>>> "%s" % (datetime.datetime.utcnow() - datetime.timedelta(hours=11))
'2012-12-26 00:25:30.029864'

仅为年份:

>>> "%s" % (datetime.datetime.utcnow() - datetime.timedelta(hours=11)).year
'2012'

编辑:是的,使用datetime.utcnow()是个好主意,而不是datetime.now()…(我的坏)

相关内容

  • 没有找到相关文章

最新更新