すべての素数の合計を制限まで計算する短い関数があります。コンテキストの完全なコードは次のとおりです。
def primes_sum(limit):
limitn = limit+1
not_prime = [False] * limitn
primes = []
for i in range(2, limitn):
if not_prime[i]:
continue
for f in xrange(i*2, limitn, i):
not_prime[f] = True
primes.append(i)
return sum(primes)
これのほとんどは私には理にかなっていますが、この部分は理解できません:
not_prime = [False] * limitn
これの目的は何ですか?それはどのように機能し、素数かどうかをどのように判断するのでしょうか? 調べてみましたが、答えが見つかりません。
前もって感謝します。