Python timer定时器两种常用方法解析


Posted in Python onJanuary 20, 2020

这篇文章主要介绍了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")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python根据出生日期获得年龄的方法
Mar 31 Python
Python的Urllib库的基本使用教程
Apr 30 Python
Python heapq使用详解及实例代码
Jan 25 Python
python Crypto模块的安装与使用方法
Dec 21 Python
python用opencv批量截取图像指定区域的方法
Jan 24 Python
PyQt打开保存对话框的方法和使用详解
Feb 27 Python
Python实现定时执行任务的三种方式简单示例
Mar 30 Python
Python 获取命令行参数内容及参数个数的实例
Dec 20 Python
python深copy和浅copy区别对比解析
Dec 26 Python
Python开发之pip安装及使用方法详解
Feb 21 Python
Python自动重新加载模块详解(autoreload module)
Apr 01 Python
Python djanjo之csrf防跨站攻击实验过程
May 14 Python
tensorflow 固定部分参数训练,只训练部分参数的实例
Jan 20 #Python
如何通过Django使用本地css/js文件
Jan 20 #Python
Python中 Global和Nonlocal的用法详解
Jan 20 #Python
Django后台管理系统的图文使用教学
Jan 20 #Python
解决Pycharm的项目目录突然消失的问题
Jan 20 #Python
Python log模块logging记录打印用法解析
Jan 20 #Python
解决tensorflow训练时内存持续增加并占满的问题
Jan 19 #Python
You might like
Terran建筑一览
2020/03/14 星际争霸
PHP4.04简明安装
2006/10/09 PHP
php下MYSQL limit的优化
2008/01/10 PHP
php学习之function的用法
2012/07/14 PHP
javascript中length属性的探索
2011/07/31 Javascript
yepnope.js 异步加载资源文件
2011/09/08 Javascript
我的Node.js学习之路(四)--单元测试
2014/07/06 Javascript
javascript实现当前页导航激活的方法
2015/02/27 Javascript
AngularJS中实现显示或隐藏动画效果的方式总结
2015/12/31 Javascript
浅谈javascript中的Function和Arguments
2016/08/30 Javascript
JavaScript使用FileReader实现图片上传预览效果
2020/03/27 Javascript
jQuery 利用ztree实现树形表格的实例代码
2017/09/27 jQuery
微信小程序使用progress组件实现显示进度功能【附源码下载】
2017/12/12 Javascript
vue、react等单页面项目应该这样子部署到服务器
2018/01/03 Javascript
详解vuex状态管理模式
2018/11/01 Javascript
Vue组件之高德地图地址选择功能的实例代码
2019/06/21 Javascript
实现vuex与组件data之间的数据同步更新方式
2019/11/12 Javascript
微信小程序自定义弹出层效果
2020/05/26 Javascript
[52:44]VGJ.T vs infamous Supermajor小组赛D组败者组第一轮 BO3 第一场 6.3
2018/06/04 DOTA
python中bisect模块用法实例
2014/09/25 Python
Python中计算三角函数之cos()方法的使用简介
2015/05/15 Python
python检测某个变量是否有定义的方法
2015/05/20 Python
python itchat实现微信自动回复的示例代码
2017/08/14 Python
Python排序搜索基本算法之选择排序实例分析
2017/12/09 Python
对numpy中向量式三目运算符详解
2018/10/31 Python
Python控制键盘鼠标pynput的详细用法
2019/01/28 Python
django将数组传递给前台模板的方法
2019/08/06 Python
python实现Pyecharts实现动态地图(Map、Geo)
2020/03/25 Python
Probikekit欧盟:在线公路自行车专家
2019/07/12 全球购物
*p++ 自增p 还是p所指向的变量
2016/07/16 面试题
一套中级Java程序员笔试题
2015/01/14 面试题
关于运动会广播稿200字
2014/10/08 职场文书
夫妻分居协议书范文
2014/11/26 职场文书
计划生育个人总结
2015/03/02 职场文书
Python中else的三种使用场景
2021/06/16 Python
使用 DataAnt 监控 Apache APISIX的原理解析
2022/07/07 Servers