python测量代码运行时间方法
Python 社区有句俗语: “python自己带着电池” ,别自己写计时框架。 Python3.2具备一个叫做 timeit 的完美计时工具可以测量python代码的运行时间。
timeit 模块:
timeit 模块定义了接受两个参数的 Timer 类。两个参数都是字符串。 第一个参数是你要计时的语句或者函数。 传递给 Timer 的第二个参数是为第一个参数语句构建环境的导入语句。 从内部讲, timeit 构建起一个独立的虚拟环境, 手工地执行建立语句,然后手工地编译和执行被计时语句。如果你也刚学python/不久,比较迷茫,建议可以去小编的Python交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面有最新Python教程项目可拿,不懂的问题多跟里面的人交流,都会解决哦!
一旦有了 Timer 对象,最简单的事就是调用 timeit(),它接受一个参数为每个测试中调用被计时语句的次数,默认为一百万次;返回所耗费的秒数。
Timer 对象的另一个主要方法是 repeat(), 它接受两个可选参数。 第一个参数是重复整个测试的次数,第二个参数是每个测试中调用被计时语句的次数。 两个参数都是可选的,它们的默认值分别是 3 和 1000000。 repeat() 方法返回以秒记录的每个测试循环的耗时列表。Python 有一个方便的 min 函数可以把输入的列表返回成最小值,如:
min(t.repeat(3, 1000000))
你可以在命令行使用 timeit 模块来测试一个已存在的 Python 程序,而不需要修改代码。
具体可参见文档: http://docs.python.org/library/timeit.html
1、程序代码
def print_func_time(function):
'''
计算程序运行时间
:param function:
:return:
'''
@wraps(function)
def func_time(*args, **kwargs):
t0 = time.clock()
result = function(*args, **kwargs)
t1 = time.clock()
print("Total running time: %s s" % (str(t1 - t0)))
return result
return func_time
2、使用print_func_time
@print_func_time
def test():
print(123)
test()
3、控制台输出程序运行时间
123
Total running time: 2.233830763170168e-05 s
以上就是本次技术分享,如果你还不懂或者刚学python/不久,可以来我的Python交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面有最新Python教程项目可拿,不懂的问题多跟里面的人交流,都会解决哦!
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
python测量代码运行时间方法的更多相关文章
- 用SWD调试接口测量代码运行时间 ( SWO )
用SWD调试接口测量代码运行时间 关于时间测量的种种问题 在嵌入式中,我们经常需要测量某段代码的执行时间或测量事件触发的时间,常规的思路是: 1:在测量起始点,反转电平2:在测量结束点,再次反转电平 ...
- python测量函数运行时间长度
python测试函数运行时间长度的方法如下 import time def measure_time(): def wraps(func): def mesure(*args,**kwargs): s ...
- python计算代码运行时间的装饰器
import time def cal_time(func): def wrapper(*args, **kwargs): t1 = time.time() result = func(*args, ...
- C# 精准获取代码运行时间
纯粹转载,转载请注明参考链接及作者! 参考链接:http://www.cnblogs.com/ret00100/archive/2010/08/06/1793680.html,作者:博客园 大佬辉 ...
- 计算Python代码运行时间长度方法
在代码中有时要计算某部分代码运行时间,便于分析. import time start = time.clock() run_function() end = time.clock() print st ...
- Python实现代码统计工具——终极加速篇
Python实现代码统计工具--终极加速篇 声明 本文对于先前系列文章中实现的C/Python代码统计工具(CPLineCounter),通过C扩展接口重写核心算法加以优化,并与网上常见的统计工具做对 ...
- C#打印代码运行时间
使用以下方法可以准确的记录代码运行的耗时. System.Diagnostics.Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); / ...
- 代码运行时间 检测锁及死锁详细信息,及sql语句 平台转化
代码运行时间 System.Diagnostics.Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); // 开始监视代码运行时间 ...
- C#如何测试代码运行时间
1.System.Diagnostics.Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); // 开始监视代码运行时间 // 需要测试 ...
随机推荐
- Nginx proxy_cache 缓存静态文件
原文链接:https://blog.csdn.net/bjgaocp/article/details/87867521 创建缓存目录mkdir /tmp/ngx_cache 添加下面语句在http{ ...
- php文件上传与下载(附封装好的函数文件)
单文件上传前端页面 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- Ignatius and the Princess IV HDU - 1029 基础dp
#include<iostream> #include<cstring> #include<cmath> #include<cstdio> #inclu ...
- Wormholes POJ - 3259 spfa判断负环
//判断负环 dist初始化为正无穷 //正环 负无穷 #include<iostream> #include<cstring> #include<queue> # ...
- PP: Deep r -th Root of Rank Supervised Joint Binary Embedding for Multivariate Time Series Retrieval
from: Dacheng Tao 悉尼大学 PROBLEM: time series retrieval: given the current multivariate time series se ...
- Selenium3+python自动化012-测试用例模块化
测试用例模块化特点:为po模型做准备. 1.提取公共方法. 2.提取数据. 3.提取逻辑. # @Author:lsj # @version V1.0 # -*- coding:UTF-8 -*- i ...
- windows 服务启动外部程序
服务使用Process启动外部程序没窗体 在WinXP和Win2003环境中,安装服务后,右键单击服务“属性”-“登录”选项卡-选择“本地系统帐户”并勾选“允许服务与桌面交互”即可. 在Win7及以后 ...
- HCTF2018-admin[flask session 伪造]
知识点:flask session 伪造 flask中session是存储在客户端cookie中的,也就是存储在本地.flask仅仅对数据进行了签名.众所周知的是,签名的作用是防篡改,而无法防止被读取 ...
- Django | Unable to get repr for <class 'django.db.models.query.QuerySet'>
问题:在mysql中查询数据时,代码如下: skus = category.sku_set.filter(is_launched=True).order_by(sort_field) skus 取不到 ...
- mysql cmd链接不上数据库情况汇总
在我的电脑 属性 高级设置 环境变量 path 编辑 添加mysql bin的文件位置复制粘贴上 mysql> use mysqlERROR 1044 (42000): Access denie ...