Das Ziel ist es, eine Liste aus dem Absatz des Benutzers zu erstellen und zu iterieren, damit ich zählen kann, wie viele Wörter spezielle Buchstaben "j, x, q, z" enthalten.
Beispieleingabe:
In einem Loch im Boden lebte ein Hobbit. Weder ein böses, schmutziges, nasses Loch, gefüllt mit den Enden von Würmern und einem nassen Geruch, noch ein trockenes, nacktes, sandiges Loch, in dem sich nichts zum Sitzen oder Essen befindet; Es war ein Hobbit-Loch, und das bedeutet Komfort.
Beispielausgabe: 1 Wort mit einem seltenen Zeichen
Ich habe den Code gestartet, in dem ich den Absatz des Benutzers in eine Liste aufteile, aber es fällt mir schwer, die Liste zu durchlaufen und jede Instanz der Sonderbuchstaben zu finden.
Das habe ich bisher:
def rareChar(words):
rareWords = 0
rareChars = ['j', 'x', 'q', 'z']
for astring in words:
wds = words.split()
for char in wds:
if char in rareChars:
rareWords = rareWords + 1
return rareWords
def CoolPara(words):
print(rareChar(words), 'word(s) with a rare character')
# DO NOT CHANGE CODE BELOW
print(CoolPara(input("Enter: ")))
Wenn ich mit der Beispieleingabe laufe, erhalte ich eine Ausgabe von '0 Wörtern mit einem seltenen Zeichen'. Wie könnte ich das beheben, damit ich die erwartete Ausgabe bekomme? Jede Hilfe wäre sehr dankbar, da ich noch relativ neu in der Codierung bin
Auch ein kurzer Hinweis: Ich darf nur die Methoden / Funktionen von split () und Len () verwenden.
for astring in words:?
.indexsollte den Job machen