我看到可以进行日期比较,也有datetime.timedelta()
,但我正在努力找出如何检查当前时间(datetime.datetime.now()
)是否早于、晚于或等于指定的时间(例如上午8点),而不管日期是什么。
发布于 2009-12-02 16:36:19
您可以使用datetime
对象的time()
方法来获取一天中的时间,您可以使用该时间进行比较,而无需考虑日期:
>>> this_morning = datetime.datetime(2009, 12, 2, 9, 30)
>>> last_night = datetime.datetime(2009, 12, 1, 20, 0)
>>> this_morning.time() < last_night.time()
True
发布于 2009-12-02 16:26:08
您可以直接比较datetime.datetime对象
例如:
>>> a
datetime.datetime(2009, 12, 2, 10, 24, 34, 198130)
>>> b
datetime.datetime(2009, 12, 2, 10, 24, 36, 910128)
>>> a < b
True
>>> a > b
False
>>> a == a
True
>>> b == b
True
>>>
发布于 2012-03-15 17:14:44
灵感来自罗杰·佩特:
import datetime
def todayAt (hr, min=0, sec=0, micros=0):
now = datetime.datetime.now()
return now.replace(hour=hr, minute=min, second=sec, microsecond=micros)
# Usage demo1:
print todayAt (17), todayAt (17, 15)
# Usage demo2:
timeNow = datetime.datetime.now()
if timeNow < todayAt (13):
print "Too Early"
https://stackoverflow.com/questions/1831410
复制相似问题