创新互联www.cdcxhl.cn八线动态BGP香港云服务器提供商,新人活动买多久送多久,划算不套路!
创新互联建站专注于企业全网整合营销推广、网站重做改版、清镇网站定制设计、自适应品牌网站建设、H5开发、商城系统网站开发、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为清镇等各大城市提供网站开发制作服务。这篇文章将为大家详细讲解有关Python 利用Timer定时器控制函数在特定时间执行,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
Thread类有一个Timer子类,该子类可用于控制指定函数在特定时间内执行一次。例如如下程序:
from threading import Timer def hello(): print("hello, world") # 指定10秒后执行hello函数 t = Timer(10.0, hello) t.start()
上面程序使用 Timer 控制 10s 后执行 hello 函数。
需要说明的是,Timer 只能控制函数在指定时间内执行一次,如果要使用 Timer 控制函数多次重复执行,则需要再执行下一次调度。
如果程序想取消 Timer 的调度,则可调用 Timer 对象的 cancel() 函数。例如,如下程序每 1s 输出一次当前时间:
from threading import Timer import time # 定义总共输出几次的计数器 count = 0 def print_time(): print("当前时间:%s" % time.ctime()) global t, count count += 1 # 如果count小于10,开始下一次调度 if count < 10: t = Timer(1, print_time) t.start() # 指定1秒后执行print_time函数 t = Timer(1, print_time) t.start()
上面程序开始运行后,程序控制 1s 后执行 print_time() 函数。print_time() 函数中的代码会进行判断,如果 count 小于 10,程序再次使用 Timer 调度 1s 后执行 print_time() 函数,这样就可以控制 print_time() 函数多次重复执行。
在上面程序中,由于只有当 count 小于 10 时才会使用 Timer 调度 1s 后执行 print_time() 函数,因此该函数只会重复执行 10 次。
关于Python 利用Timer定时器控制函数在特定时间执行就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。