pyenchant error "DictNotFoundError: Словарь для языка 'en_US' не найден"
Я использую Python 3.6 в Spyder/Anaconda, я пытаюсь использовать Enchant. Я установил 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.init(self)
Файл "/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 поднять eclass(по умолчанию)
DictNotFoundError: Словарь для языка 'en_US' не найден
И распечатка:
Диктовка []
поэтому словари не загружаются. Кажется, что enchant не знает, где расположены словари aspell.
Я перепробовал множество вариаций
enchant.set_param("enchant.aspell.dictionary.path","/aspell") enchant.set_param("enchant.myspell.dictionary.path","/usr/bin/aspell")
Что может быть уместно: этот простой код работал до того, как я обновился до Ubuntu 17.10 (с 17.4), поэтому я каким-то образом получил энчант на работу, но это было давно, и я не могу воссоздать то, что делал по-другому при установке энчанта тогда. Я также обновил Spyder до последней версии, одна из этих операций явно вызвала сбой кода. Я обновлял Spyder в прошлом, и это не вызывало никаких проблем, поэтому я подозреваю, что во время обновления системы что-то важное было удалено / перемещено. Я нашел ответы для людей с похожими проблемами в MacOS, но ответы, которые я нашел, не работают в Ubuntu. Любая помощь будет принята с благодарностью.
1 ответ
Временное решение - переход на Python 3.5. Кажется, что pyenchant 1.6.11 не совместим с Python 3.6 и что он пытается импортировать библиотеку Hspel (иврит) только при использовании с Python 3.6. Я хотел бы иметь возможность использовать новейший Python, поэтому проблема не решена, но это пока лучшее (и единственное) решение.