import time
def find(a):
count = 0
for item in a:
count = count + 1
if item == 2:
return count
a = [7,4,5,10,3,5,88,5,5,5,5,5,5,5,5,5,5,55,
5,5,5,5,5,5,5,5,5,5,5,5,55,5,5,5,5,5,
5,5,5,5,5,2,5,5,5,55,5,55,5,5,5,6]
print (len(a))
sTime = time.time()
print (find(a))
eTime = time.time()
ave = eTime - sTime
print (ave)
我想测量这个函数的执行时间 Myprint(ave)返回0;为什么?你知道吗
我也不确定,我的时间大约是1.4E-5。 尝试将调用放入循环以度量更多的迭代:
要准确地计时代码执行,应该使用^{} ,而不是
time
。timeit
轻松地允许重复代码块进行计时,以避免出现非常接近零的结果(问题的原因)这将度量在多行字符串中运行代码
s
100000次所需的时间。注意,我将print(find(a))
替换为find(a)
,以避免打印100000次结果。你知道吗运行多次是有利的,原因如下:
timeit
来比较两种方法以确定哪种方法更快,那么多次运行将更容易看到结论性结果相关问题 更多 >
编程相关推荐