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

python定时器

程序员文章站 2022-05-17 21:25:48
...
只执行一次的定时器
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import threading

def main():
    myshow = threading.Timer(2,lambda :show("thime"))
    myshow.start()

def show(text):
    print "hello"+str(text)

if __name__ == '__main__':
    main()

再主函数中
myshow = threading.Timer(2,lambda :show("thime"))

2秒后执行show这个函数并传入参数thime,如果不想传入参数
myshow = threading.Timer(2,show)

再把show方法中的参数改写一下。


上面只是执行一次如果想执行多次,

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import threading

def main():
    myshow = threading.Timer(2,show)
    myshow.start()

def show():
    print "hello time!"
    myshow2 = threading.Timer(2,show)
    myshow2.start()

if __name__ == '__main__':
    main()

上面代码中是使用了myshow和myshow2两个定时器,如果想使用一个变量和再一些时间后想要停止定时器

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import threading
import time

def main():
    global myshow
    myshow = threading.Timer(2,show)
    myshow.start()
    # 5秒后停止定时器
    time.sleep(5)
    myshow.cancel()

def show():
    print "hello time!"
    global myshow
    myshow = threading.Timer(2,show)
    myshow.start()

if __name__ == '__main__':
    main()
主函数再沉睡5秒后,关闭定时器
myshow.cancel()



相关标签: python