如果日期改变,打印一些东西



我在这里要做的是,当明天来临时(00:00),它应该打印Yes

import datetime
from datetime import date
r = True
rr = True
while r:
Today_Date = date.today()
while rr:
Tomorrow_Date = datetime.date.today() + datetime.timedelta(days=1)
if Today_Date == Tomorrow_Date:
print("Yes")

您现在拥有的方式,您的rr while循环将不断运行并更新Tomorrow_Date,当一天过去时,它将在有机会与Today_Date进行比较之前更新。您应该将Today_DateTomorrow_Date设置在该循环之外,并且仅在日期更改时更新它们。

这个应该能奏效:

如果由于其他原因需要两个循环:

import datetime
r = True
while r:
rr = True
Tomorrow_Date = datetime.date.today() + datetime.timedelta(days=1)
while rr:
if datetime.date.today() >= Tomorrow_Date:
print("Yes")
rr = False

或作为单个循环:

import datetime
r = True
Tomorrow_Date = datetime.date.today() + datetime.timedelta(days=1)
while r:
if datetime.date.today() >= Tomorrow_Date:
print("Yes")
Tomorrow_Date = datetime.date.today() + datetime.timedelta(days=1)

添加time.sleep() in来减慢循环速度可能是个好主意,这也取决于您需要的精确程度。

最新更新