我正在使用Python中的日历应用程序来检查不同参数中的多个事件。我遇到的一个问题是,在我的代码的几个方面,我使用下面显示的示例来验证特定事件是“今天”。
if (eventDateTime - TheCurrentDateTime).days = 0: print "Your event is today."
问题是,如果说,星期一,我发生的事件发生在星期二上午8点。 - 一旦转向上午8:01。星期一早上,.days的timedelta减法检查变为0,因为它们距离事件前只有几个小时,而不是几天。因此,由于我的日历正在检查每一分钟的新更新等等,在此时间过去之后,在星期一的剩余时间内,它继续报告我的星期二活动是“今天”。
我想创建一个多条件if语句,以某种方式阻止它说“你的事件是今天”。除非它已经过了午夜,实际上是在第二天(活动的那天)。
谢谢
答案 0 :(得分:4)
只是比较日期,没有时间:
TheCurrentDate = TheCurrentDateTime.date()
if eventDateTime.date() == TheCurrentDate:
print "Your event is today."
答案 1 :(得分:1)
您可以使用(eventDateTime - TheCurrentDateTime).total_seconds() < 86400
检查“少于24小时”。
然而,对于“今天”,我希望它能比较实际的一天,而不是小时数。所以比较eventDateTime.date() == TheCurrentDateTime.date()