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, поэтому проблема не решена, но это пока лучшее (и единственное) решение.

Другие вопросы по тегам