只比较Python中的时间部分



我只想比较datetime中的时间部分。我有不同的日期,只有时间字段可以比较。由于日期是不同的,我只想考虑时间部分,所以我认为创建两个日期时间对象不会有帮助。我的字符串为

start="22:00:00"
End="03:00:00"
Tocompare="23:30:00"

以上是当我用日期时间作为转换它们时的字符串

dt=datetime.strptime(start,"%H:%M:%S")

它提供

1900-01-01 22:00:00

这是python中的默认日期。所以我需要避免这一切,只想要一部分时间。我只需要检查我的Tocompare是否位于startEnd 之间

只需调用datetime对象的.time()方法即可获得它们的小时、分钟、秒和微秒。

dt = datetime.strptime(start,"%H:%M:%S").time()

使用datetime.time((比较它们的时间。

import datetime
start = datetime.datetime.strptime(start, '%H:%M:%S')
start = datetime.time(start.hour, start.minute,start.second)
tocompare = datetime.datetime.strptime(tocompare, '%H:%M:%S')
tocompare = datetime.time(tocompare.hour, tocompare.minute, tocompare.second)
start > tocompare # False

相关内容

  • 没有找到相关文章

最新更新