【发布时间】:2012-04-20 08:27:58
【问题描述】:
查看当前时间是否介于 10:30 AM 和 4:30 PM 之间的最佳方法是什么。
我能想到以下几点,不知道有多正确:
from datetime import datetime
nw = datetime.now()
hrs = nw.hour;mins = nw.minute;secs = nw.second;
zero = timedelta(seconds = secs+mins*60+hrs*3600)
st = nw - zero # this take me to 0 hours.
time1 = st + timedelta(seconds=10*3600+30*60) # this gives 10:30 AM
time2 = st + timedelta(seconds=16*3600+30*60) # this gives 4:30 PM
if nw>= time1 or nw <= time2:
print "yes, within the interval"
如果这是正确的方法,请告诉我,可以写更好的东西吗?
【问题讨论】:
-
timedelta()也允许您指定天数、小时数和分钟数,因此您不必计算它并且代码更具可读性。