每n秒运行一次类方法

时间:2014-11-14 23:34:34

标签: python multithreading python-3.x repeat

我尝试每隔n秒在Python 3中运行一个类方法。

我认为Threading是一个很好的方法。问题(Run certain code every n seconds)显示了如何在没有对象的情况下做到这一点。

我试图"转移"像OOP这样的代码:

class Test:
    import threading
    def printit():
        print("hello world")
        threading.Timer(5.0, self.printit).start()

test = Test()
test.printit()

>> TypeError: printit() takes no arguments (1 given)

我收到此错误。

你能帮我做对吗?

1 个答案:

答案 0 :(得分:2)

将参数self添加到printit方法中,它对我有用。此外,import语句应位于文件的顶部,而不是在类定义中。

import threading

class Test:
    def printit(self):
        print("hello world")
        threading.Timer(5.0, self.printit).start()

test = Test()
test.printit()