Ich versuche zu zählen, wie viele Vorkommen von bestimmten Zeichen in einer Zeichenfolge vorhanden sind, aber die Ausgabe ist falsch.
Hier ist mein Code:
%Vor% Wenn ich den Buchstaben A
eingeben würde, wäre die Ausgabe: 1 1 1 1 1
Verwenden Sie eine Counter
Counter
ist nur in Python 2.7+ verfügbar. Eine Lösung, die in Python 2.5 funktionieren sollte, wäre defaultdict
if A or a in stri
bedeutet if A or (a in stri)
, was if True or (a in stri)
ist, was immer True
ist, und dasselbe für jede Ihrer if
-Anweisungen.
Was Sie sagen wollten, ist if A in stri or a in stri
.
Das ist dein Fehler. Nicht die einzige - Sie zählen nicht wirklich Vokale, da Sie nur überprüfen, ob die Zeichenfolge sie einmal enthält.
Das andere Problem ist, dass Ihr Code bei weitem nicht der beste Weg ist, dies zu tun. Sehen Sie sich zum Beispiel Folgendes an: Zähle Vokale aus der Roheingabe . Dort finden Sie ein paar nette Lösungen, die für Ihren speziellen Fall leicht angepasst werden können. Ich denke, wenn Sie die erste Antwort im Detail durchgehen, werden Sie in der Lage sein, Ihren Code korrekt zu schreiben.
Ich habe einen Code zum Zählen von Vokalen geschrieben. Sie können damit jedes Zeichen Ihrer Wahl zählen. Ich hoffe das hilft! (In Python 3.6.0 kodiert)
%Vor%string1 = 'Ich liebe mein Indien' Vokal = 'aeiou' für i in Vokal: Drucken Sie i + "- & gt;" + str (string1.count (i))
Das funktioniert bei mir und zählt auch die Konsonanten (denke an einen Bonus), aber wenn Sie wirklich keine Konsonanten zählen wollen, müssen Sie nur die letzte for-Schleife und die letzte Variable löschen die Spitze.
Sie ist der Python-Code:
%Vor%Tags und Links python