Ich habe bereits durchgemacht diesen Beitrag die Anwendungen nltk
‚s cmudict
zum Zählen der Anzahl von Silben in einem Wort:
from nltk.corpus import cmudict
d = cmudict.dict()
def nsyl(word):
return [len(list(y for y in x if y[-1].isdigit())) for x in d[word.lower()]]
Für Wörter außerhalb des cmu-Wörterbuchs wie z. B. Namen Rohit
gibt es jedoch kein Ergebnis.
Gibt es eine andere / bessere Möglichkeit, Silben für ein Wort zu zählen?
Antworten:
Sie können eine andere Python-Bibliothek namens Pyphen ausprobieren . Es ist einfach zu bedienen und unterstützt viele Sprachen.
quelle
Ich hatte genau das gleiche Problem, das habe ich getan:
Fangen Sie den Schlüsselfehler ab, den Sie erhalten, wenn das Wort nicht wie folgt im Wörterbuch von cmu gefunden wird:
Rufen Sie die folgende Silbenfunktion auf
quelle