我在 Spyder/Anaconda 中运行 Python 3.6,我正在尝试使用附魔。我安装了 pyenchant 使用
pip install pyenchant
我还使用安装了 aspell
sudo apt-get install aspell-en
我在 Python 中执行:
import enchant
print("The dict is", enchant.list_languages())
slownik = enchant.Dict("en_US")
我不断收到错误消息:
文件“/home/grzegorz/anaconda3/lib/python3.6/site-packages/enchant/init .py ”,第 562 行,在init _EnchantObject 中。初始化(自己)
文件“/home/grzegorz/anaconda3/lib/python3.6/site-packages/enchant/init .py ”,第 168 行,在init self._init_this()
文件“/home/grzegorz/anaconda3/lib/python3.6/site-packages/enchant/init .py ”,第 569 行,在 _init_this this = self._broker._request_dict_data(self.tag)
文件“/home/grzegorz/anaconda3/lib/python3.6/site-packages/enchant/init .py ”,第 310 行,在 _request_dict_data self._raise_error(eStr % (tag,),DictNotFoundError)
文件“/home/grzegorz/anaconda3/lib/python3.6/site-packages/enchant/init .py ”,第 258 行,在 _raise_error raise eclass(默认)
DictNotFoundError:找不到语言“en_US”的字典
打印输出是:
字典是 []
所以没有字典被加载。似乎附魔不知道咒语字典在哪里。
我尝试了许多变体
enchant.set_param("enchant.aspell.dictionary.path","/aspell") enchant.set_param("enchant.myspell.dictionary.path","/usr/bin/aspell")
可能相关的是:这个简单的代码在我升级到 Ubuntu 17.10(从 17.4)之前就已经工作了,所以我当时不知怎么就开始工作了,但那是很久以前的事了,我无法重新创建我当时在安装 enchant 时所做的不同。我还将 Spyder 更新到了最新版本,其中一项操作显然导致代码中断。我过去更新了 Spyder,它没有引起任何问题,所以我怀疑在系统更新期间,一些重要的东西被删除/移动了。我在 MacOS 上为有类似问题的人找到了答案,但我找到的答案在 Ubuntu 上不起作用。任何帮助将不胜感激。