Hallo,
ich fange gerade neu mit Python an und habe eine Liste mit den Werten 2 und 3. In diese Liste möchte ich alle weiteren Primzahlen bis einschließlich 191 einfügen.
Dazu habe ich diesen Code geschrieben:
>>> primelist = [2,3]
>>> for n in range (4,192):
for i in range (2,n):
if n%i == 0:
break
else:
primelist.append(n)
>>> primelist = set(primelist)
In meine Liste werden aber auch nicht-Primzahlen eingefügt und ich weiß nicht woran das liegt bzw. an welcher Stelle der Fehler liegt. Habt ihr eine Idee, was ich falsch gemacht habe?
Liebe Grüße
Primzahlen bis 192 ausgeben
Warum wandelst Du die Liste zum Schluß in ein Set um? Wenn Du Dir das genauer anschaust, ist das schon ein erster Hinweis, was falsch läuft.
Übrigens ein schönes Beispiel, warum Typen in Variablennamen nichts verloren haben: `primelist` ist gar keine Liste mehr. Besserer Name wäre `primes`.
Übrigens ein schönes Beispiel, warum Typen in Variablennamen nichts verloren haben: `primelist` ist gar keine Liste mehr. Besserer Name wäre `primes`.
- __blackjack__
- User
- Beiträge: 14077
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@rr11: Geh die Schleife einfach mal Schritt für Schritt durch, überlege Dir was Du erwartest, und füge `print()`-Anweisungen ein um Deine Erwartungen zu überprüfen.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari