Python 我试图在每天的某个时间执行我的代码,但它不起作用

Python 我试图在每天的某个时间执行我的代码,但它不起作用,python,function,bots,schedule,Python,Function,Bots,Schedule,我做错什么了吗。我一直在努力解决这个问题。它只打印一次,然后继续运行,但不打印任何其他内容 import schedule import time def bot(): schedule.every(1).day.at("6:41").do(bot) print("ya") while True: schedule.run_pending() time.sleep(1) 查看文档,以获得一个很好的示例,说明这应该如何工

我做错什么了吗。我一直在努力解决这个问题。它只打印一次,然后继续运行,但不打印任何其他内容

import schedule
import time

def bot():
    schedule.every(1).day.at("6:41").do(bot)
    print("ya")

while True:
    schedule.run_pending()
    time.sleep(1)

查看文档,以获得一个很好的示例,说明这应该如何工作

简单的回答是,您的
bot()
正在尝试递归地执行自身,但当它自己运行时,唯一发生的事情是它告诉自己在一天内6:41再次运行自己……同时没有执行
print()
语句,因为它不存在于
bot()
函数中

您的代码执行一次
print()
语句,因为它在定义
bot()
之后立即运行

在这段代码中,您永远不会调用
bot()
,因此该函数实际上不会做任何事情

简单的解决方法是将所需的功能放入
bot()
函数中,然后将其添加到
计划中,如下所示:

导入计划
导入时间
def bot():
打印(“ya”)
附表。每(1)天。在(“6:41”)。do(bot)
尽管如此:
schedule.run_pending()
时间。睡眠(1)

检查print()调用上的缩进?
print(“ya”)
缩进应该在
bot()内。
?仍然不工作