[英]how to make something repeat x amount of times every n seconds in python?
比方说,我希望总共听到 5 次哔哔声,每次哔哔声中断 5 秒。 为此,我尝试使用线程模块,并做了这个:
import threading
import winsound
i = 0
def beep():
global i
while i < 5:
i += 1
threading.Timer(5.0, beep).start()
winsound.PlaySound("beep", winsound.SND_FILENAME)
beep()
这段代码成功地重复了 i 次,但忽略了一个时间间隔,而是在一个更快、均匀分布的不可更改的间隔上执行它。 我知道这是因为 while 循环是如何工作的,但我似乎找不到任何替代方案。 每一条信息都会派上用场!
使用时间模块
进口时间
time.sleep(int x in seconds)
我让这个工作正常:
import threading
import winsound
def beep(n):
if n == 0:
return
for i in range(5):
winsound.Beep(4000,100)
threading.Timer(5.0, beep, args=(n-1,)).start()
beep(4)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.