为什么工作没有执行?如果删除 schedule.clear()
一切正常,但脚本会重复。
def greet(name):
print('Hello', name)
while True:
schedule.clear()
with open("config.json") as config:
data = json.load(config)
if data["start"]:
date = data["time"]
for i in date:
schedule.every().day.at(i).do(greet, name =data["name"])
config.close()
all_jobs = schedule.get_jobs()
print(all_jobs)
schedule.run_pending()
time.sleep(1)
输出
[Every 1 day at 09:18:00 do greet(name='Лариса') (last run: [never], next run: 2021-06-26 09:18:00), Every 1 day at 09:19:00 do greet(name='Лариса') (last run: [never], next run: 2021-06-25 09:19:00), Every 1 day at 09:20:00 do greet(name='Лариса') (last run: [never], next run: 2021-06-25 09:20:00)]
[Every 1 day at 09:18:00 do greet(name='Лариса') (last run: [never], next run: 2021-06-26 09:18:00), Every 1 day at 09:19:00 do greet(name='Лариса') (last run: [never], next run: 2021-06-26 09:19:00), Every 1 day at 09:20:00 do greet(name='Лариса') (last run: [never], next run: 2021-06-25 09:20:00)]
答案 0 :(得分:0)
感谢大家的帮助。我找到了这个解决方案
while True:
with open("config.json") as config:
data = json.load(config)
if data["start"]:
date = data["time"]
now = datetime.datetime.now()
now = now.strftime('%H:%M')
for i in date:
if i == now:
great(data["name"])
time.sleep(1)