Python Timer回调方法

use*_*282 7 python

from threading import Timer

class test_timer():
    def __init__(self):
        self.awesum="hh"
        self.timer = Timer(1,self.say_hello,args=["WOW"])
    def say_hello(self,message):
        self.awesum=message
        print 'HIHIHIIHIH'
        print message
        raise Exception("hi")

if __name__ == '__main__':
    print 'Got to main'
    x=test_timer()
Run Code Online (Sandbox Code Playgroud)

当我运行上面的代码时,我的回调方法永远不会被触发.我一直试图解决这个问题几个小时,但无法弄明白>.<

要测试,计时器.我运行此代码并检查x.awesum是否为'WOW'

Tim*_*Tim 11

你永远不会启动计时器.你需要:

self.timer.start()
Run Code Online (Sandbox Code Playgroud)