在Python中,如果要计算函数运行的时间有两种方式:自带的计时框架timeit和自己计算时间。注意自己计算时间最好使用clock获取当前时间,这样精度高于1ms。事实上timeit内部也调用的这个函数。
示例代码
def test(n):
"""Stupid test function"""
L = []
for i in range(n):
L.append(i)
if __name__ == '__main__':
test_round = 1000
#方法1:自带计时框架
import timeit
time_cost = timeit.timeit("test(10000)", setup="from __main__ import test", number = test_round)
print "test_case1: ", time_cost/test_round
##方法2:手工计算时间差
import time
time_start = time.clock()
for i in range(0,test_round):
test(10000)
time_end = time.clock()
time_cost2 = (time_end - time_start)/test_round
print "test_case2: ", time_cost2
输出结果
test_case1: 0.000998621273847
test_case2: 0.000975838080758
推荐用方法1,调用简单省事。现在想想python为什么好学好用,很大程度上是实现的太全了,很多功能只是调用就好了。
网友评论