def all_primes(start,end):
list_nonprimes = []
list_primes = []
for i in range(start,end):
for a in range(2,i):
if i % a == 1 and i not in list_nonprimes:
if i not in list_primes:
list_primes.append(i)
else:
list_nonprimes.append(i)
return list_primes
爲什麼這給我一個不正確的輸出?如何從某個集合中獲取所有素數?
>>> all_primes(1,10)
[3,5,7,9]
如何消除9?
2被認爲是首要太 – xbonez
爲什麼遍歷'範圍(2,1)'當你已經把所有的素數小於'i'的名單? – Amber
除此之外:您可能有興趣瞭解'any'和'all'。我想'如果沒有(對於list_primes中的i%a == 0):list_primes.append(i)'讀取比'for-else'版本更好,儘管YMMV。 – DSM