limit = 2000000 number_list = [False] + [True]*(limit-1) list_len = len(number_list) def next_prime(i): global number_list global list_len x = i+1 while(x <= list_len): if number_list[x-1] == True: break x += 1 return x i = 2 while(i*i <= list_len): x = i*i while(x <= list_len): number_list[x-1] = False x += i i = next_prime(i) sum = 0 for i in xrange(1, limit+1): if number_list[i-1]: sum += i print sum