我在測量函數的時間時遇到問題。python-measure函數時間
我的功能是「線性搜索」:
def linear_search(obj, item,):
for i in range(0, len(obj)):
if obj[i] == item:
return i
return -1
而且我做了測量時間的100倍,並增加了所有結果以列表的另一個功能:
def measureTime(a):
nl=[]
import random
import time
for x in range(0,100): #calculating time
start = time.time()
a
end =time.time()
times=end-start
nl.append(times)
return nl
當我m使用measureTime(linear_search(list,random.choice(range(0,50))))
,函數始終返回[0.0]
。
什麼會導致此問題?謝謝。
因爲你的方法a沒有在循環中調用,但只有一次在你調用方法之前 – martijnn2008
我無法調用函數內的函數?我怎麼解決這個問題?謝謝 – Guy
您可以將函數作爲參數傳遞給另一個函數,但這需要不同的語法。看到我的答案。 – martijnn2008