以下程序(在函数 prime 内)的运行时间为 110.726383227 秒
如果我运行相同的程序而不将其包装在一个函数(素数)中,它的运行时间是 222.006502634 秒
通过将其包装在一个函数中,我实现了显着的性能改进。
还有没有可能提高这个程序的效率?
# This is a program to find sum of prime numbers till 2 billion
def prime():
import time
start_time = time.clock()
num = 2
j=1
tot_sum = 0
for num in xrange(2,2000000):
count = 0
for j in xrange(1,int(num**0.5)+1): # checking from 1 to sqrt(n)+1
if(num % j == 0):
count = count+1
if(count == 1):
tot_sum = tot_sum + num
print "total sum is %d" % tot_sum
print time.clock() - start_time, "seconds"