Hallo erstmal. Ich habe eine Funktion in Python3 programmiert die mir alle Primzahlen von 2 bis n ausgibt. Bis 7 hat es geklappt:

primzahlen(7)
2
3
5
7

aber dann kam das:

primzahlen(10)
2
3
5
7
9

9? Könnt ihr mir bitte sagen welchen Fehler ich gemacht habe. Hier ist der Programmcode den ich geschrieben hab:

def primzahlen(ende):
    if ende > 2:
        print(2)
    for Zahl in  range(2, ende):
        for Teiler in range(2, ende-1):
            if Zahl  % Teiler == 0:
                break
            else:
                print(Zahl)
                break

Danke schonmal :-)