PyEnchant:使用个人单词列表拼写检查文本块

mar*_*t1n 11 python spell-checking pyenchant

因此PyEnchant允许您定义除语言词典之外的正确拼写单词的个人单词列表:

d2 = enchant.DictWithPWL("en_US","mywords.txt")
Run Code Online (Sandbox Code Playgroud)

但是,生成的d2检查器是类Dict,它只能用于检查单个单词,例如:

>>> d.check("Hello")
True
Run Code Online (Sandbox Code Playgroud)

SpellChecker类允许的文本块的拼写检查.但是,我似乎无法找到如何指定个人单词列表Dict.这不是支持的功能吗?我想拼写一个针对en_US的文本块以及我的个人单词列表.有任何想法吗?

zee*_*onk 19

SpellChecker初始化程序的第一个参数既可以是语言名称,也可以是附魔字典:

from enchant import DictWithPWL
from enchant.checker import SpellChecker

my_dict = DictWithPWL("en_US", "mywords.txt")
my_checker = SpellChecker(my_dict)

my_checker.set_text("This is sme sample txt with erors.")
for error in my_checker:
    print "ERROR:", error.word
Run Code Online (Sandbox Code Playgroud)

文档不清楚这一点,但代码可用 :)