【发布时间】:2017-04-18 22:45:50
【问题描述】:
我有以下两个日期/时间,分别是 date_time1 和 date_time2:
2017-04-15 00:00:00
2017-04-17 15:35:19+00:00
parsed1 = dateutil.parser.parse(date_time1)
parsed2 = dateutil.parser.parse(date_time2)
如果我收到另一个名为 input_date_time 的日期/时间(例如 2017-04-16 12:11:42+00:00),我愿意执行以下操作:
# Would like to check if `input_date_time` is within the range
if parsed1 <= input_date_time <= parsed2:
…
得到一个错误:TypeError: can't compare offset-naive and offset-aware datetimes
想过把它分解成年、月、日、小时、分钟和秒,然后比较每一个。
这样做的正确方法是什么?
【问题讨论】:
-
您尝试过建议的代码吗?它奏效了吗?你得到什么错误?
-
@DanielRoseman 得到
TypeError: can't compare offset-naive and offset-aware datetimes -
问题是其中一个有时区而另一个没有。如果你想假设它们在同一个区域,只需将感知的时区设置为
None。 -
@Paul 我该怎么做?
input_date_time似乎与本地时区有关。如何让parsed1和parsed2知晓?
标签: python datetime python-dateutil