Python时间性能测量

主要有如下三种方式:性能

一,CPU时间

time.clock()this

测量CPU时间,比较精准,经过比较程序运行先后的CPU时间差,得出程序运行的CPU时间。spa

二, 时钟时间

time.time()code

测量时钟时间,也就是一般的相似掐表计时。blog

三,基准时间

timeit.timeit(stmt='pass', setup='pass', timer=<default timer>, number=1000000) get

简短示例:it

timeit(“math.sqrt(2.0)”, “import math”)class

timeit(“sqrt(2.0)”, “from ,math import sqrt”)test

timeit(“test()”, “from __main__ import test”, number = 10000)import

 

示例(示例中的三个方法都是求解一个数的因子数的个数)

CPU时间的示例:

Code1


 

结果:最快的是方法三,方法二和方法一,其实不相上下.

Result1


 

时钟时间示例:

Code2


 

结果:

Result2


 

在精度不够的状况下,都没法得知,方法三真正的运行时间.

 

真的想知道,方法三比方法一或者二快多少倍,仍是要使用timeit。timeit能够重复执行代码必定次数,这样更加稳定的反应程序的执行时间,不会由于一次的执行而产生较大的偏差。

Code3


 

结果:

Result3


 

经过timeit能够看出,方法二基本和方法一的性能是相同的。timeit返回是时钟时间。方法二,基本是方法三耗时的130倍左右。

相关文章
相关标签/搜索