我想检查Python程序中英语词典中是否有单词。
我相信可能会采用nltk wordnet接口,但是我不知道如何将其用于如此简单的任务。
def is_english_word(word): pass # how to I implement is_english_word? is_english_word(token.lower())
将来,我可能想检查单词的单数形式是否在字典中(例如,属性->属性->英语单词)。我将如何实现?
要获得更大的功能和灵活性,请使用专用的拼写检查库,例如PyEnchant。有一个教程,或者您可以直接学习:
PyEnchant
>>> import enchant >>> d = enchant.Dict("en_US") >>> d.check("Hello") True >>> d.check("Helo") False >>> d.suggest("Helo") ['He lo', 'He-lo', 'Hello', 'Helot', 'Help', 'Halo', 'Hell', 'Held', 'Helm', 'Hero', "He'll"] >>>
PyEnchant带有一些词典(en_GB,en_US,de_DE,fr_FR),但是如果您需要更多语言,可以使用任何OpenOffice。
似乎有一个名为的多元化图书馆inflect,但我不知道它是否有用。
inflect