1. ホーム
  2. python

[解決済み] Pythonで単語が英単語かどうか調べるには?

2022-04-23 02:05:22

質問

Pythonのプログラムで、ある単語が英語辞書にあるかどうかを調べたい。

nltk wordnet インタフェースが良い方法だと思いますが、このような簡単なタスクにどのように使用するのか見当がつきません。

def is_english_word(word):
    pass # how to I implement is_english_word?

is_english_word(token.lower())

将来、ある単語の単数形が辞書にあるかどうかを調べたいことがあります(例:property -> property -> english word)。どのようにすれば実現できるでしょうか?

どのように解決するのですか?

より強力で柔軟なスペルチェックのためには 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 しかし、それが良いものであるかどうかは分からない。