我有以下代码,我想在其中测量时间性能。
import time
def fibonacci(n):
t0 = time.clock()
if n == 0:
return 0
elif n == 1:
return 1
else:
a = fibonacci(n-1)
b = fibonacci(n-2)
return a + b, time.clock()
当我运行时,它返回Type error: can only concatenate tuple (not "int") to tuple
请问如何将函数的结果与时间性能一起返回?这里我漏掉了什么?
发布于 2018-06-15 04:00:54
a
和b
是您的函数的结果,您将返回一个元组...只需对函数外部的主fibonacci调用计时,例如,在函数包装器中:
def time_fibonacci(n):
start = time.clock()
result = fibonacci(n)
# return a tuple: result + cpu time
return result, time.clock() - start
和固定斐波那契数本身(没有时钟):
def fibonacci(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
a = fibonacci(n-1)
b = fibonacci(n-2)
return a + b
https://stackoverflow.com/questions/50864956
复制相似问题