<分区>
我是 python 的新手,我想知道是否有一个函数可以按特定的时间间隔重复一个事件,有点像
setInterval()
在 Javascript 中。我知道我可以使用
time.sleep()
在常规循环中,但我想知道是否有更好的方法来做到这一点。提前致谢。
<分区>
我是 python 的新手,我想知道是否有一个函数可以按特定的时间间隔重复一个事件,有点像
setInterval()
在 Javascript 中。我知道我可以使用
time.sleep()
在常规循环中,但我想知道是否有更好的方法来做到这一点。提前致谢。
最佳答案
以下是@Mathias Ettinger 的简化版本
因为 call_at_interval
已经在一个单独的线程中运行,所以不需要使用 Timer
,因为它会产生另一个线程。
直接休眠并调用回调。
from threading import Thread
from time import sleep
def call_at_interval(period, callback, args):
while True:
sleep(period)
callback(*args)
def setInterval(period, callback, *args):
Thread(target=call_at_interval, args=(period, callback, args)).start()
def hello(word):
print("hello", word)
setInterval(10, hello, 'world!')
关于python - 如何在 python 中设置以特定间隔重复的循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33473899/