zoukankan      html  css  js  c++  java
  • python下timer定时器常用的两种实现方法

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

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

    #! /usr/bin/python3
    #! -*- conding: utf-8 -*-
    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:

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

    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")
    
  • 相关阅读:
    回档|朴素的网络游戏
    回档|NOIP2010 关押罪犯
    回档|tyvj1091 等差数列
    python lambda 函数
    python map函数
    linux命令清除服务器缓存
    python 类
    距阵的运用
    有一种感动叫ACM(记WJMZBMR在成都赛区开幕式上的讲话)
    C语言strstr()函数:返回字符串中首次出现子串的地址
  • 原文地址:https://www.cnblogs.com/dylancao/p/12213235.html
Copyright © 2011-2022 走看看