Kivy - 拼写

创建于 2024-12-03 / 23
字体: [默认] [大] [更大]

Kivy 库在其"kivy.core"包中附带一个拼写模块。它提供对一系列拼写检查后端以及单词建议的抽象访问。该 API 的灵感来自"python-enchant"库。

您需要安装 enchant 才能使用此功能。

pip3 install pyenchant

示例

创建 Spelling 类的对象(在"kivy.core.spelling"模块中定义)以调用其各种方法。例如,list_languages() 方法返回受支持的语言列表。

from kivy.core.spelling import Spelling
s = Spelling()
s.list_languages()

输出

它将列出所有受支持的语言 −

['en_BW', 'en_AU', 'en_BZ', 'en_GB', 'en_JM', 'en_DK',
'en_HK', 'en_GH', 'en_US', 'en_ZA', 'en_ZW', 'en_SG', 'en_NZ',
'en_BS', 'en_AG', 'en_PH', 'en_IE', 'en_NA', 'en_TT', 'en_IN',
'en_NG', 'en_CA']

您可以从列表中选择一种特定的语言以供后续使用。

s.select_language('en_US')

Spelling 类中的 check() 方法检查给定单词在当前活动语言中是否有效。如果是,则返回 True。如果不应检查该单词,则返回 None(例如对于 '')。如果它不是 self._language 中的有效单词,则返回 False。

>>> s.check('this')
True
>>> s.check('thes')
False

您可以从 Spelling 类中获取给定单词的建议。

s.suggest('wold')

['wild', 'wolf', 'old', 'wolds', 'woald', 'world', 'would',
'weld', 'sold', 'woad', 'word', 'told', 'wood', 'cold', 'gold']

如果您尝试选择列表中不存在的语言支持的语言,Kivy 会引发以下 NoSuchLangError 异常 −

s.select_language('Hindi')
kivy.core.spelling.NoSuchLangError: Enchant Backend: No
language for "Hindi"

当调用使用语言的方法但在调用之前未选择任何语言时,Kivy 会引发"NoLanguageSelectedError"。



0 人点赞过