欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python定时器

程序员文章站 2022-05-17 21:25:36
...

定时器是非常好用的一个组件,今天我们来讲下定时器。

基本使用实例一(几秒后执行一次)

import threading

def run(): # 定时器回调
    print("timer run")

timer = threading.Timer(1,run) # 1代表1秒后执行
timer.start()  # 启动定时器

使用实例二(循环执行)

##功能:定时器立马启动,每隔一秒执行run,打印出当前时间
import threading
import time

def run():
    print("timer run:" ,time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
    global timer
    timer = threading.Timer(1, run)
    timer.start()

timer = threading.Timer(0,run)
timer.start()

输出结果
timer run: 2017-09-13 14:46:08
timer run: 2017-09-13 14:46:09
timer run: 2017-09-13 14:46:10
timer run: 2017-09-13 14:46:11

在使用Python定时器时需要注意如下3个方面:

(1)定时器构造函数主要有2个参数,第一个参数为时间,第二个参数为函数名,第一个参数表示多长时间后调用后面第二个参数指明的函数。
(2)必须在定时器执行函数内部重复构造定时器,因为定时器构造后只执行1次,必须循环调用。
(3)定时器间隔单位是秒,可以是浮点数,如2.5,0.04等。

使用实例三(半路取消定时器)

import threading
import time
def run():
    print("timer run:" ,time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
    global timer
    timer = threading.Timer(1, run)
    timer.start()

timer = threading.Timer(0,run)
timer.start()

time.sleep(5)   ## 等待5s
timer.cancel()  ##停止定时器
print("5s到了定时器退出")

输出结果
timer run: 2017-09-13 14:52:04
timer run: 2017-09-13 14:52:05
timer run: 2017-09-13 14:52:06
timer run: 2017-09-13 14:52:07
timer run: 2017-09-13 14:52:08
5s到了定时器退出

老生常谈:深圳有爱好音乐的会打鼓(吉他,键盘,贝斯等)的程序员和其它职业可以一起交流加入我们乐队一起嗨。我的QQ:657455400

相关标签: python