python下timer定时器常用的两种实现方法

枫铃3年前 (2021-10-03)Python214

方法一,使用线程中现成的:

这种一般比较常用,特别是在线程中的使用方法,下面是一个例子能够很清楚的说明它的具体使用方法:

import threading
import time
def fun_timer():
    print(time.strftime('%Y-%m-%d %H:%M:%S'))
    global timer
    timer = threading.Timer(2,fun_timer)
    timer.start();
timer = threading.Timer(1,fun_timer)
timer.start();
time.sleep(5)
timer.cancel()
print(time.strftime('%Y-%m-%d %H:%M:%S'))

方法二,根据time中的来定义timer:

这种方法使用比较灵活,可根据自身的东西来添自身的需求:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
import time

class TimerError(Exception):
    """A custom exception used to report errors in use of Timer class"""

class Timer:
    def __init__(self):
        self._start_time = None

    def start(self):
        """Start a new timer"""
        if self._start_time is not None:
            raise TimerError(f"Timer is running. Use .stop() to stop it")

        self._start_time = time.perf_counter()

    def stop(self):
        """Stop the timer, and report the elapsed time"""
        if self._start_time is None:
            raise TimerError(f"Timer is not running. Use .start() to start it")

        elapsed_time = time.perf_counter() - self._start_time
        self._start_time = None
        print(f"Elapsed time: {elapsed_time:0.4f} seconds")

相关文章

网络爬虫中Fiddler抓取PC端网页数据包与手机端APP数据包

网络爬虫中Fiddler抓取PC端网页数据包与手机端APP数据包

1 引言 在编写网络爬虫时,第一步(也是极为关键一步)就是对网络的请求(request)...

Python Selenium 常用方法总结

selenium Python 总结一些工作中可能会经常使用到的API。 1.获取当前页面的Url 方法:current_url 实例&...

Python 中的序列类型支持哪些公共操作

一、序列类型支持哪些公共...

python with语句与contextlib

with语句用于异常处理...

python中os.path.isdir()等函数的作用和用法

一 用法和概念: Python中的os模块用于和系统进行交互,其中: 1 os.listdir()...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。