有没有办法,例如,打印Hello World! x秒后每n秒?看着这个: Run certain code every n seconds,我知道如何每隔n秒运行一次代码。但是我希望每隔n秒在x秒后运行一些代码。
需要一些指导如何执行此操作。
关键条件:程序不应滞后或睡眠。我所指的某些代码是一个函数调用。
答案 0 :(得分:2)
你可以做一些事情(在5秒后运行它,并且它每10秒运行一次):
import time
time.sleep(5)
while True:
your code
time.sleep(10)
答案 1 :(得分:1)
import threading
import time
def printit():
threading.Timer(n, printit).start()
print "Hello, World!"
threading.Timer(x, printit)
答案 2 :(得分:0)
对于给定任务,请尝试使用 Tkinter
内部计划,不会阻止。
关键方法是:
.after( n_msec_from_now, aScheduledFuncCALL ) # to plan a call not before n_msec-s
.after_idle( aScheduledFuncCALL ) # to plan a call after GUI gets <idle>
更多智能选项
import Tkinter as tk
def RunCertainCodeCALL():
#a CertainCode
root.after( x * 1000, RunCertainCodeCALL ) # .SET for next round of schedulling
root = tk.Tk()
root.after( x * 1000, RunCertainCodeCALL ) # .SET for 1-st round of schedulling
root.mainloop() # .GUI mainloop()