Я пытаюсь запускать метод класса в Python 3 каждые n секунд.
Я подумал, что Threading будет хорошим подходом. Вопрос (Выполнять определенный код каждые n секунд) показывает, как это сделать без объекты.
Я попытался "перенести" этот код в ООП так:
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)
Я получаю эту ошибку.
Можете ли вы помочь мне сделать это правильно?
Test.printit()
- person Asad Saeeduddin   schedule 15.11.2014import
внутри определения класса. (Есть некоторые редкие случаи, когда это может иметь смысл, но это не один из них.) Делайте это на верхнем уровне, в верхней части вашего сценария. - person abarnert   schedule 15.11.2014@staticmethod
для этого. Он определил метод экземпляра, который нельзя вызвать для экземпляра. Ваше предложение в целом работает, но оно вводит в заблуждение. - person abarnert   schedule 15.11.2014