我正在使用 apscheduler 并且我正在尝试将参数传递给在计划作业启动时调用的处理函数:
from apscheduler.scheduler import Scheduler
import time
def printit(sometext):
print "this happens every 5 seconds"
print sometext
sched = Scheduler()
sched.start()
sometext = "this is a passed message"
sched.add_cron_job(printit(sometext), second="*/5")
while True:
time.sleep(1)
这样做会给我以下错误:
TypeError: func must be callable
是否可以将参数传递给函数处理程序。如果没有,还有其他选择吗?基本上,我需要每个计划的作业返回我在创建计划时传入的字符串。谢谢!
原文由 still.Learning 发布,翻译遵循 CC BY-SA 4.0 许可协议
printit(sometext)
不是可调用的,它是调用的结果。您可以使用:
这是一个稍后调用的可调用对象,它可能会做你想做的事。