1
因此,我今晚已經花費在基於Eratosthenes篩的基礎上製作這個素材生成器。這裏是代碼:如何替換素描列表中的參數
n = input("What number do you want to calculate to? ")
import time
start = time.time()
def pr(l):
ln = l+1
p = range(2, ln)
for k in p:
f = range(k, ln, k)
for f in f[1:]:
if f in p:
p.remove(f)
return p
print pr(n)
end = time.time() - start
print "This took: ",end
我認爲我想要做的主要事情是加速一點點。我很確定,將p.remove(f)
函數更改爲像p[f] = 0
這樣的函數會加快速度,但這不起作用。有誰知道我做錯了什麼?還是有更快的做到這一點?
這是哪一種語言?標記語言 – hrv
是的,請執行'p = range(2,l + 1);對於範圍內的k(2,Math.sqrt(l)+1):對於範圍內的f(k * k,l + 1,k):如果f在p中:p.remove(f);'。 –