首页 > 解决方案 > 如何获得执行我的程序的时间?

问题描述

def Xbonacci(signature,n):
    count = 0
    while len(signature) != n:
        sum = 0
        for i in signature[count:]:
            sum = sum + i
        signature.append(sum)
        count += 1
    return signature


print(Xbonacci([1,0,0,0,0,0,0,0,0,0], 20))

我的代码执行正确并且没有任何错误,但显然它需要的时间比它应该的要长。

我怎样才能找出执行程序所花费的时间?

PS 这是对 Codewars 的挑战。

请不要优化我的代码,这就是我对执行时间进行排序后想做的事情。

标签: pythonalgorithmfibonacci

解决方案


时间模块是你需要的

import time

def Xbonacci(signature,n):
    start = time.time()
    count = 0
    while len(signature) != n:
        sum = 0
        for i in signature[count:]:
            sum = sum + i
        signature.append(sum)
        count += 1
    end = time.time()
    print(f'Time elapsed: {end - start}')
    return signature


print(Xbonacci([1,0,0,0,0,0,0,0,0,0], 20))

如果您正在创建多个功能,请考虑制作时间装饰器


推荐阅读