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中的编码知识整理汇总
Jan 26 Python
Python Unittest自动化单元测试框架详解
Apr 04 Python
python实现按长宽比缩放图片
Jun 07 Python
python实现电脑自动关机
Jun 20 Python
selenium python 实现基本自动化测试的示例代码
Feb 25 Python
详解Python爬取并下载《电影天堂》3千多部电影
Apr 26 Python
安装Pycharm2019以及配置anconda教程的方法步骤
Nov 11 Python
python使用SQLAlchemy操作MySQL
Jan 02 Python
python turtle工具绘制四叶草的实例分享
Feb 14 Python
TensorFlow2.X结合OpenCV 实现手势识别功能
Apr 08 Python
python mysql中in参数化说明
Jun 05 Python
python 6种方法实现单例模式
Dec 15 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
用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
2007/09/30 PHP
解析php获取字符串的编码格式的方法(函数)
2013/06/21 PHP
浅析php变量修饰符static的使用
2013/06/28 PHP
php封装的验证码工具类完整实例
2016/10/19 PHP
Yii 2.0中场景的使用教程
2017/06/02 PHP
JQuery学习笔录 简单的JQuery
2012/04/09 Javascript
前后台交互过程中json格式如何解析以及如何生成
2012/12/26 Javascript
Javascript selection的兼容性写法介绍
2013/12/20 Javascript
js中回调函数的学习笔记
2014/07/31 Javascript
jquery+css实现动感的图片切换效果
2015/11/25 Javascript
简单谈谈json跨域
2016/03/13 Javascript
bootstrap3 兼容IE8浏览器!
2016/05/02 Javascript
利用select实现年月日三级联动的日期选择效果【推荐】
2016/12/13 Javascript
Three.js基础部分学习
2017/01/08 Javascript
微信小程序搜索组件wxSearch实例详解
2017/06/08 Javascript
微信小程序仿微信运动步数排行(交互)
2018/07/13 Javascript
详解webpack 热更新优化
2018/09/13 Javascript
深入解读VUE中的异步渲染的实现
2020/06/19 Javascript
在Vue中使用Viser说明(基于AntV-G2可视化引擎)
2020/10/28 Javascript
Python 的描述符 descriptor详解
2016/02/27 Python
django进阶之cookie和session的使用示例
2018/08/17 Python
python调用Matplotlib绘制分布点图
2019/10/18 Python
Pytorch保存模型用于测试和用于继续训练的区别详解
2020/01/10 Python
Python matplotlib实时画图案例
2020/04/23 Python
CSS3绘制圆角矩形的简单示例
2015/09/28 HTML / CSS
德国珠宝和配件商店:Styleserver
2021/02/23 全球购物
机电一体化专业应届生求职信
2013/11/27 职场文书
财务会计专业个人求职信范本
2014/01/08 职场文书
《音乐之都维也纳》教学反思
2014/04/16 职场文书
计算机科学技术自荐信
2014/06/12 职场文书
学校领导班子对照检查材料
2014/08/28 职场文书
初中班主任教育随笔
2015/08/15 职场文书
2016春季幼儿园大班开学寄语
2015/12/03 职场文书
《纸船和风筝》教学反思
2016/02/18 职场文书
员工保密协议范本,您一定得收藏!很有用!
2019/08/08 职场文书
JS如何实现基于websocket的多端桥接平台
2021/05/14 Javascript