5

附魔库的不同结果(附魔 1.6.6)

在 MAC OSX 10.11.12 (El Capitan) 中:

>>> import enchant
>>> d = enchant.Dict("en_US")
>>> d.suggest("prfomnc")
['performance', 'prominence', 'preform', 'perform']

在 Linux Ubuntu 14.04 LTS 中:

>>> import enchant
>>> d = enchant.Dict("en_US")
>>> d.suggest("prfomnc")
['princedom', 'preferment', 'preform']

任何想法为什么我在 NLTK 中为“建议”功能获得不同的结果和其他替代方案?


苹果系统

>>> enchant.list_dicts()
[('de_DE', <Enchant: Myspell Provider>), ('en_AU', <Enchant: Myspell Provider>), ('en_GB', <Enchant: Myspell Provider>), ('en_US', <Enchant: Myspell Provider>), ('fr_FR', <Enchant: Myspell Provider>)]

Ubuntu

>>> enchant.list_dicts()
[('en', <Enchant: Aspell Provider>), ('en_CA', <Enchant: Aspell Provider>), ('en_GB', <Enchant: Aspell Provider>), ('en_US', <Enchant: Aspell Provider>), ('en_ZA', <Enchant: Myspell Provider>), ('en_AU', <Enchant: Myspell Provider>)]

在我的 Ubuntu 中尝试过:

>>> b = enchant.Broker()
>>> b.set_ordering("en_US","myspell,aspell")
>>> b.set_ordering("*","aspell,myspell")
>>> b.request_dict("en_US").provider
<Enchant: Myspell Provider>
>>> b.request_dict("en_GB").provider
<Enchant: Aspell Provider>
>>> d.suggest("prfomnc")
['princedom', 'preferment', 'preform']

但还是一样的结果

4

1 回答 1

1

enchant库不是拼写更正库。相反,它是一个聚合器,搜索与各种受支持系统的接口。

文档中:

Enchant 能够同时加载多个后端。目前,Enchant 有 8 个后端:

Aspell/Pspell (intends to replace Ispell)
Ispell (old as sin, could be interpreted as a defacto standard)
MySpell/Hunspell (an OOo project, also used by Mozilla)
Uspell (primarily Yiddish, Hebrew, and Eastern European languages - hosted in AbiWord's CVS under the module "uspell")
Hspell (Hebrew)
Zemberek (Turkish)
Voikko (Finnish)
AppleSpell (Mac OSX)

注意到最后一个了吗?

我怀疑,没有花费任何精力来确认,你得到不同的结果是因为你的 MacOS 系统和你的 Linux 系统安装了不同的拼写软件,或者它们安装了相同的软件但可能它们在使用的搜索路径enchant

于 2016-02-13T00:06:51.773 回答