计划需要多长时间

时间:2017-07-23 22:58:28

标签: python python-3.x

我正在编写一个关于除数的简单代码,我想得到一个关于计算机给我答案需要多长时间的反馈。

这是我的代码:

num=int(input('Give me a number'))
listRange=list(range(1,num+1))
divisorList=[]
for number in listRange:
    if num%number==0:
        divisorList.append(number)
print(divisorList)

正如你所看到的,数字越大,计算机处理所有除数的时间就越长,所以我想知道它在这样做时花了多少时间。

3 个答案:

答案 0 :(得分:1)

您可以将时间模块用于循环之前的时间戳,然后使用时间模块打印差异。

import time

num=int(input('Give me a number'))
listRange=list(range(1,num+1))
divisorList=[]
start = time.time() # use time.clock() if on Windows
for number in listRange:
        if num%number==0:
            divisorList.append(number)
end = time.time() # use time.clock() if on Windows
print(divisorList)
print("Time taken: {:06.5f}secs".format(end-start)) # Seconds
print("Time taken: {:10.5f}ms".format((end-start)*1000) # Miliseconds

答案 1 :(得分:0)

如果您想以秒为单位找到时间:

from time import time
start = time()
... # code
print(time() - start)

答案 2 :(得分:0)

您可以使用timeit模块:

import timeit

num=100000
listRange=list(range(1,num+1))

def function():
    divisorList=[]
    for number in listRange:
        if num%number==0:
            divisorList.append(number)

print(timeit.timeit(function, number=1))
# 0.01269146570884061