如何解决Python 3 Schedule可随时运行
我目前正在编写一个Python程序,该程序应启动多个任务。为了进行时间管理,我安装了库Schedule。不幸的是,调度程序每次都执行我的功能,尽管它没有正确的时间。时间是过去还是将来都无关紧要,该函数始终会执行。
import time
from datetime import date
import schedule
class trader():
def __init__(self):
pass
def scheduler(self,x,y,z):
#schedule.every().monday.at("23:10").tag().do(self.daily(x,z))
schedule.every().day.at("22:10").do(self.daily(x,z))
while True:
schedule.run_pending()
time.sleep(1)
def daily(self,z):
print("running")
return
感谢您的帮助
解决方法
Job.do()
method需要一个函数对象,但是您正在调用一个函数并将结果传递给.do()
有一个FAQ on schedule's documentation website,说明了如何将参数传递给计划的函数。
def my_job():
# This job will execute every 5 to 10 seconds.
print('Foo')
schedule.every(5).to(10).seconds.do(my_job)
OP的代码可以更改为
schedule.every().day.at("22:10").do(self.daily,x,y,z)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。