python中的计时器timeit的使用方法


Posted in Python onOctober 20, 2017

本文介绍了python中的计时器timeit的使用方法,分享给大家,具体如下:

timeit

通常在一段程序的前后都用上time.time(),然后进行相减就可以得到一段程序的运行时间,不过python提供了更强大的计时库:timeit

#导入timeit.timeit
from timeit import timeit 

#看执行1000000次x=1的时间:
timeit('x=1')

#看x=1的执行时间,执行1次(number可以省略,默认值为1000000):
timeit('x=1', number=1)

#看一个列表生成器的执行时间,执行1次:
timeit('[i for i in range(10000)]', number=1)

#看一个列表生成器的执行时间,执行10000次:
timeit('[i for i in range(100) if i%2==0]', number=10000)

测试一个函数的执行时间:

from timeit import timeit

def func():
  s = 0
  for i in range(1000):
    s += i
  print(s)

# timeit(函数名_字符串,运行环境_字符串,number=运行次数)
t = timeit('func()', 'from __main__ import func', number=1000)
print(t)

此程序测试函数运行1000次的执行时间

repeat:

由于电脑永远都有其他程序也在占用着资源,你的程序不可能最高效的执行。所以一般都会进行多次试验,取最少的执行时间为真正的执行时间。

from timeit import repeat

def func():
  s = 0
  for i in range(1000):
    s += i

#repeat和timeit用法相似,多了一个repeat参数,表示重复测试的次数(可以不写,默认值为3.),返回值为一个时间的列表。
t = repeat('func()', 'from __main__ import func', number=100, repeat=5)
print(t) 
print(min(t))

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

Python 相关文章推荐
python实现画一颗树和一片森林
Jun 25 Python
使用numpy和PIL进行简单的图像处理方法
Jul 02 Python
JavaScript中的模拟事件和自定义事件实例分析
Jul 27 Python
python之消除前缀重命名的方法
Oct 21 Python
python实现字符串完美拆分split()的方法
Jul 16 Python
通过selenium抓取某东的TT购买记录并分析趋势过程解析
Aug 15 Python
Python Des加密解密如何实现软件注册码机器码
Jan 08 Python
NumPy统计函数的实现方法
Jan 21 Python
Jupyter Notebook折叠输出的内容实例
Apr 22 Python
python根据完整路径获得盘名/路径名/文件名/文件扩展名的方法
Apr 22 Python
基于python模拟bfs和dfs代码实例
Nov 19 Python
python ansible自动化运维工具执行流程
Jun 24 Python
浅谈Python peewee 使用经验
Oct 20 #Python
Python 获得13位unix时间戳的方法
Oct 20 #Python
python使用 HTMLTestRunner.py生成测试报告
Oct 20 #Python
Python WXPY实现微信监控报警功能的代码
Oct 20 #Python
python爬虫 正则表达式使用技巧及爬取个人博客的实例讲解
Oct 20 #Python
放弃 Python 转向 Go语言有人给出了 9 大理由
Oct 20 #Python
python虚拟环境的安装配置图文教程
Oct 20 #Python
You might like
php smarty模版引擎中的缓存应用
2009/12/11 PHP
php中获得视频时间总长度的另一种方法
2011/09/15 PHP
PHP登录验证功能示例【用户名、密码、验证码、数据库、已登陆验证、自动登录和注销登录等】
2019/02/25 PHP
JavaScript 学习笔记 Black.Caffeine 09.11.28
2009/11/30 Javascript
用jquery实现等比例缩放图片效果插件
2010/07/24 Javascript
为Extjs加加速(javascript加速)
2010/08/19 Javascript
jquery 实现密码框的显示与隐藏示例代码
2013/09/18 Javascript
jQuery在iframe中无法弹出对话框的解决方法
2014/01/12 Javascript
详解JS函数重载
2014/12/04 Javascript
javascript中typeof操作符和constucor属性检测
2015/02/26 Javascript
jquery实现弹出层效果实例
2015/05/19 Javascript
如何动态加载外部Javascript文件
2015/12/02 Javascript
javascript正则表达式定义(语法)总结
2016/01/08 Javascript
JavaScript实现输入框与清空按钮联动效果
2016/09/09 Javascript
Sortable.js拖拽排序使用方法解析
2016/11/04 Javascript
JS中位置与大小的获取方法
2016/11/22 Javascript
利用JQuery阻止事件冒泡
2016/12/01 Javascript
常用的js方法合集
2017/03/10 Javascript
JS中双击和单击事件冲突的解决方法
2018/04/09 Javascript
JavaScript时间与时间戳的转换操作实例分析
2018/12/07 Javascript
python 七种邮件内容发送方法实例
2014/04/22 Python
python实现复制整个目录的方法
2015/05/12 Python
详解Python nose单元测试框架的安装与使用
2017/12/20 Python
Python获取当前公网ip并自动断开宽带连接实例代码
2018/01/12 Python
python抓取网站的图片并下载到本地的方法
2018/05/22 Python
do you have any Best Practice for testing
2016/06/04 面试题
什么是抽象
2015/12/13 面试题
文秘专业大学生求职信
2013/11/10 职场文书
食堂个人先进事迹
2014/01/22 职场文书
退伍老兵事迹材料
2014/01/31 职场文书
个人三严三实对照检查材料
2014/09/25 职场文书
党员反对四风思想汇报范文
2014/10/25 职场文书
春节随笔
2015/08/15 职场文书
MySQL pt-slave-restart工具的使用简介
2021/04/07 MySQL
Python如何配置环境变量详解
2021/05/18 Python
python中super()函数的理解与基本使用
2021/08/30 Python