计算python程序执行时间

举报
山海之光 发表于 2019/12/27 21:28:37 2019/12/27
【摘要】 写代码的时候,我们可能想知道python的执行效率如何,有如下几种方法可以计算python程序执行时间。1、方法1import datetimestarttime = datetime.datetime.now()#long runningendtime = datetime.datetime.now()print (endtime - starttime).seconds2、方法 2sta...

写代码的时候,我们可能想知道python的执行效率如何,有如下几种方法可以计算python程序执行时间。


1、方法1

import datetime

starttime = datetime.datetime.now()

#long running

endtime = datetime.datetime.now()

print (endtime - starttime).seconds


2、方法 2

start = time.time()

run_fun()

end = time.time()

print end-start


3、方法3

start = time.clock()

run_fun()

end = time.clock()

print end-start

方法1和方法2都包含了其他程序使用CPU的时间,是程序开始到程序结束的运行时间。

方法3算只计算了程序运行的CPU时间


4、方法4

import cProfile

import pstats


...

def test_func():

    ...

...

if __name__=='__main__':

    cProfile.run("test_func()", filename="runtime_test.out", sort="cumulative")  # test_func是指要测试的函数,性能测试结果保存到runtime_test.out文件

    p = pstats.Stats("runtime_test.out")

    p.strip_dirs().sort_stats("cumulative", "name").print_stats(10)  # 在屏幕打印性能测试结果

cProfile和pstats都是python自带的模块,上面这种性能测试方法会将运行过的每个函数的单词执行时间、总执行次数、总耗时都统计出来,可以很方便地分析性能瓶颈在哪里。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。