python 定时器,轮询定时器的实例

yipeiwu_com7年前Python基础

python 定时器默认定时器只执行一次,第一个参数单位S,几秒后执行

import threading
 
def fun_timer():
 print('Hello Timer!')
 
timer = threading.Timer(1, fun_timer)
timer.start()

改成以下可以执行多次

建立loop_timer.py

from threading import _Timer
class LoopTimer(_Timer):
 """Call a function after a specified number of seconds: 
 
 
   t = LoopTi
   mer(30.0, f, args=[], kwargs={}) 
   t.start() 
   t.cancel()  # stop the timer's action if it's still waiting 
 
 
 """
 
 def __init__(self, interval, function, args=[], kwargs={}):
  _Timer.__init__(self, interval, function, args, kwargs)
 
 def run(self):
  '''self.finished.wait(self.interval) 
  if not self.finished.is_set(): 
   self.function(*self.args, **self.kwargs) 
  self.finished.set()'''
  while True:
   self.finished.wait(self.interval)
   if self.finished.is_set():
    self.finished.set()
    break
   self.function(*self.args, **self.kwargs)

调用

t = LoopTimer(120, fun_timer)
  t.start()

以上这篇python 定时器,轮询定时器的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Django中同时使用多个配置文件的方法

我们仅仅处理一个单一的设置文件 settings.py文件由django-admin.py startproject命令生成。但是当你准备要进行配置的时候,你将发现你需要多个配置文件以使...

Python3几个常见问题的处理方法

1. 编码问题: 遇到了几个字符串转换问题,总结如下: # str to bytes str.encode(s) # bytes to str bytes.decode(b)...

利用Python实现简单的相似图片搜索的教程

利用Python实现简单的相似图片搜索的教程

大概五年前吧,我那时还在为一家约会网站做开发工作。他们是早期创业公司,但他们也开始拥有了一些稳定用户量。不像其他约会网站,这家公司向来以洁身自好为主要市场形象。它不是一个供你鬼混的网站—...

python3.6.3+opencv3.3.0实现动态人脸捕获

python3.6.3+opencv3.3.0实现动态人脸捕获

本文实例为大家分享了python实现动态人脸捕获的具体代码,供大家参考,具体内容如下 步骤 载入cv2 捕获摄像头 获取第一帧图像 定义人脸识别信息 开始循环...

python操作数据库之sqlite3打开数据库、删除、修改示例

复制代码 代码如下:#coding=utf-8__auther__ = 'xianbao'import sqlite3# 打开数据库def opendata():  ...