defsum0fN2(n): start = time.time() theSum = 0 for i inrange(1, n+1): theSum += i end = time.time() return theSum, end-start
for i inrange(5): print("Sum is %d required %10.7f seconds" % sum0fN2(10000)) print('\n')
# 如果将累加和分别增大十与一百倍,其执行时间如下:
for i inrange(5): print("Sum is %d required %10.7f seconds" % sum0fN2(100000)) print('\n') for i inrange(5): print("Sum is %d required %10.7f seconds" % sum0fN2(1000000))
# 输出结果为: # Sum is 50005000 required 0.0001163 seconds # Sum is 50005000 required 0.0001297 seconds # Sum is 50005000 required 0.0000899 seconds # Sum is 50005000 required 0.0001163 seconds # Sum is 50005000 required 0.0001256 seconds
# Sum is 5000050000 required 0.0011559 seconds # Sum is 5000050000 required 0.0012946 seconds # Sum is 5000050000 required 0.0011950 seconds # Sum is 5000050000 required 0.0013113 seconds # Sum is 5000050000 required 0.0012801 seconds
# Sum is 500000500000 required 0.0132554 seconds # Sum is 500000500000 required 0.0133324 seconds # Sum is 500000500000 required 0.0128369 seconds # Sum is 500000500000 required 0.0120413 seconds # Sum is 500000500000 required 0.0124726 seconds
for i inrange(5): i = 10 ** (i+4) print("Sum is %d required %10.7f seconds" % sum0fN3(i))
# 输出的结果为: # Sum is 50005000 required 0.0000010 seconds # Sum is 5000050000 required 0.0000002 seconds # Sum is 500000500000 required 0.0000002 seconds # Sum is 50000005000000 required 0.0000002 seconds # Sum is 5000000050000000 required 0.0000002 seconds