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

使用Python将UTC时间与东部时间进行比较,第1张

使用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 < d2True


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5647512.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存