每秒执行一次函数
可能重复的问题:
Python 倒计时器
大家好,
我想了解一下 Python 中的计时器。
假设我有一段代码,类似于:
def abc()
print 'Hi'
print 'Hello'
print 'Hai'
我想每隔 1 秒打印一次,最多打印三次;也就是说,第一秒我需要检查一下打印的内容,第二秒也要检查,第三秒同样要检查。
在我的实际代码中,变量的值会被更新。我需要记录下每一秒所有变量是如何更新的。
有没有人能告诉我该怎么做?
2 个回答
2
你可以看看,是否能使用标准库中的 sched 模块:
sched 模块定义了一个类,用来实现一个通用的事件调度器。
>>> import sched, time
>>> s = sched.scheduler(time.time, time.sleep)
>>> def print_time(): print "From print_time", time.time()
...
>>> def print_some_times():
... print time.time()
... s.enter(5, 1, print_time, ())
... s.enter(10, 1, print_time, ())
... s.run()
... print time.time()
...
>>> print_some_times()
930343690.257
From print_time 930343695.274
From print_time 930343700.273
930343700.276
3
你可以使用一个循环,叫做“while循环”,然后用一个叫做time
的模块。这个模块里有个功能time.sleep
,可以让程序暂停一秒钟。还有一个功能time.clock
,可以告诉你在什么时间打印你的变量。