在计时器后获取python类函数的返回值

时间:2018-08-23 14:09:39

标签: python timer return return-value

我有一个名为Timer_的简单python类,它需要一个间隔(以秒为单位)并在后台运行计时器。完成后,它将运行一个返回true的完成函数。当计时器以变量形式停止时,如何获得该函数的值?谢谢!

import threading



class Timer_():

    def __init__(self, interval):
        #interval in seconds
        self.interval = interval
        self.finished = False

    def run(self):
        self.timel = threading.Timer(float(self.interval), self.finish)
        self.timel.start()

    def finish(self):
        self.finished = True
        return True

    def cancel(self):
        self.timel.cancel()



time = Timer_(5)
time.run()
print(time.finished)

1 个答案:

答案 0 :(得分:0)

您想要等到time.finishedTrue的声音

尝试对time.finished的值使用while循环:

time = Timer_(5)
timer.run()
while not timer.finished:
    pass
x = timer.finished
print(x)

这将循环一段时间,直到timer.finishedTrue为止,然后您可以将该值用作变量或继续。