Python 调度方法时缺少自变量
我想使用schedule模块安排一个方法,但它不起作用 错误消息如下所示: 警告:缺少参数“self” 这是我的密码:Python 调度方法时缺少自变量,python,schedule,Python,Schedule,我想使用schedule模块安排一个方法,但它不起作用 错误消息如下所示: 警告:缺少参数“self” 这是我的密码: def p_b(self): do print('hello') do do schedule.every().minute.do(p_b) while True: schedule.run_pending() # error comes out. time.sleep(1) 如错误所示,您向方法中添加了“self”。自
def p_b(self):
do
print('hello')
do
do
schedule.every().minute.do(p_b)
while True:
schedule.run_pending() # error comes out.
time.sleep(1)
如错误所示,您向方法中添加了“self”。自表示在调用时自动传递的类的实例,请参阅fore more info 因此,尝试删除self参数,它应该可以正常工作:
import schedule
import time
def p_b():
print('hello')
schedule.every().minute.do(p_b)
while True:
schedule.run_pending()
time.sleep(1)
编辑
如果类中确实有该方法,而外部有调度程序,则需要从类的实例调用它,例如:
import schedule
import time
class SomeClass:
def p_b(self):
print('hello')
if __name__=='__main__':
some_class = SomeClass()
schedule.every().minute.do(some_class.p_b)
while True:
schedule.run_pending()
time.sleep(1)
始终包括完整的回溯报告。它告诉我们的比你想象的要多。谢谢。但def p_b(self):是某个类中的函数,所以“self”必须包含整个代码。有没有办法在类中使用self函数的“schedule”呢?参见我的编辑,我还添加了一个类示例。