Python执行时间的几种计算方法


Posted in Python onJuly 31, 2020

首先说一下我遇到的坑,生产上遇到的问题,我调度Python脚本执行并监控这个进程,python脚本运行时间远远大于python脚本中自己统计的程序执行时间。

监控python脚本执行的时间是36个小时,而python脚本中统计自己执行的时间是4个小时左右。
问题暴漏之后首先想到的是linux出了问题,查找各种日志未发现有何异常。

然后是想到python中用到的py2neo的写数据异步,阻塞进程执行。

最后,终于找到问题的所在:python脚本使用统计时间的方式是time.clock(),而这种方式统计的是CPU的执行时间,不是程序的执行时间。

接下来,就几种python的统计时间方式对比一下:

方法1:

import datetime
starttime = datetime.datetime.now()
#long running
#do something other
endtime = datetime.datetime.now()
print (endtime - starttime).seconds

datetime.datetime.now()获取的是当前日期,在程序执行结束之后,这个方式获得的时间值为程序执行的时间。

方法2:

start = time.time()
#long running
#do something other
end = time.time()
print end-start

time.time()获取自纪元以来的当前时间(以秒为单位)。如果系统时钟提供它们,则可能存在秒的分数。所以这个地方返回的是一个浮点型类型。这里获取的也是程序的执行时间。

方法3:

start = time.clock()
#long running
#do something other
end = time.clock()
print end-start

time.clock()返回程序开始或第一次被调用clock()以来的CPU时间。 这具有与系统记录一样多的精度。返回的也是一个浮点类型。这里获得的是CPU的执行时间。
注:程序执行时间=cpu时间 + io时间 + 休眠或者等待时间

以上就是Python执行时间的几种计算方法的详细内容,更多关于Python执行时间的计算方法的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python批量同步web服务器代码核心程序
Sep 01 Python
Centos5.x下升级python到python2.7版本教程
Feb 14 Python
python抓取最新博客内容并生成Rss
May 17 Python
numpy.random.seed()的使用实例解析
Feb 03 Python
Python 实现12306登录功能实例代码
Feb 09 Python
python中的turtle库函数简单使用教程
Jul 23 Python
python判断完全平方数的方法
Nov 13 Python
python顺序执行多个py文件的方法
Jun 29 Python
python统计函数库scipy.stats的用法解析
Feb 25 Python
解决jupyter notebook 前面书写后面内容消失的问题
Apr 13 Python
Python代码执行时间测量模块timeit用法解析
Jul 01 Python
python 制作网站小说下载器
Feb 20 Python
python 使用elasticsearch 实现翻页的三种方式
Jul 31 #Python
Python爬虫获取豆瓣电影并写入excel
Jul 31 #Python
深入浅析Python代码规范性检测
Jul 31 #Python
python使用Word2Vec进行情感分析解析
Jul 31 #Python
Python爬虫基于lxml解决数据编码乱码问题
Jul 31 #Python
Python如何定义有可选参数的元类
Jul 31 #Python
Python爬虫爬取糗事百科段子实例分享
Jul 31 #Python
You might like
PHP随机字符串生成代码(包括大小写字母)
2013/06/24 PHP
在PHP上显示JFreechart画的统计图方法
2013/11/03 PHP
个人写的PHP验证码生成类分享
2014/08/21 PHP
基于命令行执行带参数的php脚本并取得参数的方法
2016/01/25 PHP
Smarty模板类内部原理实例分析
2019/07/03 PHP
Javascript 跨域访问解决方案
2009/02/14 Javascript
zTree插件之多选下拉菜单实例代码
2013/11/06 Javascript
js判断字符长度及中英文数字等
2014/03/19 Javascript
在Linux上用forever实现Node.js项目自启动
2014/07/09 Javascript
JavaScript中伪协议 javascript:使用探讨
2014/07/18 Javascript
Javascript模仿淘宝信用评价实例(附源码)
2015/11/26 Javascript
xtemplate node.js 的使用方法实例解析
2016/08/22 Javascript
深入学习js瀑布流布局
2016/10/14 Javascript
Vue中组件之间数据的传递的示例代码
2017/09/08 Javascript
NodeJs实现定时任务的示例代码
2017/12/05 NodeJs
微信小程序自定义组件封装及父子间组件传值的方法
2018/08/28 Javascript
javascript 原型与原型链的理解及实例分析
2019/11/23 Javascript
JS 获取文件后缀,判断文件类型(比如是否为图片格式)
2020/05/09 Javascript
浅谈Pandas中map, applymap and apply的区别
2018/04/10 Python
Python测试网络连通性示例【基于ping】
2018/08/03 Python
Python模拟简单电梯调度算法示例
2018/08/20 Python
聊聊python里如何用Borg pattern实现的单例模式
2019/06/06 Python
Pytest框架之fixture的详细使用教程
2020/04/07 Python
python网络编程之五子棋游戏
2020/05/14 Python
HTML5拖拽API经典实例详解
2018/04/20 HTML / CSS
英国现代绅士品牌:Hackett
2017/12/17 全球购物
英国最大的专业户外零售商:Mountain Warehouse
2018/06/06 全球购物
HEMA法国:荷兰原创设计
2019/02/21 全球购物
介绍一下EJB的体系结构
2012/08/01 面试题
农贸市场管理制度
2014/01/31 职场文书
初级会计求职信范文
2014/02/15 职场文书
餐饮总经理岗位职责
2014/03/07 职场文书
2015大学生求职信范文
2015/03/20 职场文书
2015中学政教处工作总结
2015/07/22 职场文书
《蓝鲸的眼睛》读后感5篇
2020/01/15 职场文书
golang 生成对应的数据表struct定义操作
2021/04/28 Golang