Du bekommst den Hinweis, weil du offensichtlich sehr grundlegende Dinge noch nicht verstanden hast. Betrachtet man zum Beispiel deinen neuen Code:
- checkeins ist nicht mehr als:
Code: Alles auswählen
def checkeins(s): return s[0] in kl
Code: Alles auswählen
for x in s:
x in kl
- wenn du Code kopierst, wie in checkviel, dann machst du etwas falsch. Das musst du auf jeden Fall zusammenfassen.
- Wegen "kl" und "gr" solltest du noch einmal ins string-Modul schauen, dort sind diese nämlich vordefiniert
- Zeilen 40 bis Ende sind wieder kopiert
- Statt 0/1 solltest du False/True verwenden
- Benutze richtige Namen, nicht nur i,j,anz. In zwei Wochen weißt du nicht mehr, was die bedeuten.
- Code solltest du nicht auf Modulebene stehen haben, damit verhinderst du, dass dein Modul sinnvol importiert werden kann
- Inline-Kommentare machen den Code unübersichtilch. Statt die Kommentare hinter den Code zu setzen, schreibe das Kommentar besser in die Zeile vor dem Code
- ""in" checkt, ob ein String in einem anderen String vorkommt" ist ein überflüssiges Kommentar. Kommentare sollen abstrakter beschreiben was passiert und nicht die Befehle noch einmal in Worte packen
- Ach ja, und natürlich PEP 8
Damit kannst du deine Kenntnisse dann vielleicht ein wenig erweitern.
Sebastian