您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用Python将UTC时间与东部时间进行比较

使用Python将UTC时间与东部时间进行比较

大家都对wBerry造成的困惑感到满意,但是为了得到一个简洁的答案,我将在这里进行总结。

根据datetime文档,当比较两个datetime.time对象时:“如果两个比较符都知道并且具有不同的tzinfo属性,则首先通过减去其UTC偏移量(从self.utcoffset()获得)来调整比较符”

在您给出的示例中,比较会引发TypeError,因为EASTERN_TZ.utcoffset()返回None。utcoffset为None,因为美国东部遵守夏令时,因此与UTC的时间偏移取决于datetime.time中不可用的日期。

您应该使用datetime.datetime对象进行跨时区比较:

>>> import pytz, datetime
>>> UTC_TZ = pytz.utc
>>> EASTERN_TZ = pytz.timezone('America/New_York')
>>> d1 = datetime.datetime(2012, 1, 1, 10, 0, tzinfo=UTC_TZ)
>>> d2 = datetime.datetime(2012, 1, 1, 10, 0, tzinfo=EASTERN_TZ)
>>> d1 < d2
True
python 2022/1/1 18:42:03 有280人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶