Ich habe vor kurzem angefangen zu versuchen, Probleme auf Projekt Euler mit Python zu lösen, und haben diese Straße stoßen bei dem Versuch, Primzahlen zu berechnen und sie an eine Liste anfügen. Ich habe den folgenden Code geschrieben, aber ich bin verwirrt, warum es nichts ausgibt, wenn ich es ausführe.Berechnen Primzahlen und Anhängen an eine Liste
import math
primes = []
def isPrime(i):
if number<=1:
return False
if number==2:
return True
if number%2==0:
return False
for i in range(3,int(sqrt(number))+1):
if number%i==0:
return False
return True
for i in range (1, 9999999):
if isPrime(i) == True:
primes.append(i)
else:
continue
print(primes)
Nun zu Änderung 'def isPrime (i):' zu 'def isPrime (Nummer):' und 'für i in Bereich (3, int (sqrt (Anzahl)) +1): 'to' für i im Bereich (3, int (math.sqrt (number)) + 1): ' – jacoblaw
Dies ist eine sehr ineffiziente Methode zur Berechnung einer Liste von Primzahlen. Es wäre besser, die Primzahlen direkt mit einem Sieb zu erzeugen. – AChampion
Mh ... läuft es überhaupt? 'i' sollte' number' sein, 'sqrt' sollte' math.sqrt' sein. –