#python #opencv #importerror
#python #opencv #importerror
Вопрос:
Несмотря на то, что я опробовал решения, приведенные для вопросов того же типа, касающихся той же ошибки, ничего не сработало. Когда я пытаюсь запустить скрипт, он выдает эту ошибку импорта. Но удивительно, когда я пытаюсь
apt-get install python-opencv
Я получаю это сообщение:
python-opencv уже является самой новой версией.
Это то, что меня озадачивает. Если он установлен, почему его нельзя импортировать? Заранее спасибо.
Комментарии:
1. Очень странно, я попытался импортировать cv2 в Xubuntu 16.04 после установки python-opencv, и он работает нормально. Не могли бы вы предоставить более подробную информацию о среде, в которой вы ее запускаете. Используете ли вы virtualenv?
2. @Nurzhan. Нет. Я не использовал virtualenv. Кстати, я использую debian 8.
3. Используете ли вы python3.x ?
4. @3kt. No. Его 2.7
5. @user5103877 Вы установили libopencv-dev?
Ответ №1:
Скорее всего, библиотека python-opencv не установлена в каталоге по умолчанию. Вот почему ваш интерпретатор не может его найти.
При работе с проектами на python рекомендуется использовать virtualenv. Это позволит вам создавать отдельные среды python и не портить их. Затем установите pip и используйте его для установки пакетов python, а не apt-get install внутри вашей виртуальной среды.
В вашем случае вам нужно запустить:
sudo dpkg-query -L python-opencv
Он выведет каталоги, в которые была установлена библиотека python-opencv. И добавьте этот путь к PYTHONPATH в ваш файл .bashrc (скорее всего, это .bashrc в Debian):
PYTHONPATH="${PYTHONPATH}:/path/to/the/python/libraries"
export PYTHONPATH
Затем запустите . .bashrc
в своей домашней папке.
Но это не рекомендуется делать. Как я уже сказал, более чистый способ — использовать virtualenv и pip . В этом случае вам не нужно путаться с PYTHONPATH.
Комментарии:
1. Я сделал то, что вы сказали, и получил следующую ошибку: Трассировка (последний последний вызов): … Ошибка импорта: нет модуля с именем _sysconfigdata_nd
2. @user5103877 Лучше удалить то, что вы уже установили. Прочитайте руководства о том, как настроить virtualenv в debian, установите pip и используйте его для установки пакетов вместо apt-get . Это решит вашу проблему.
3. Я полагаю, что у меня есть как virtualenv, так и pip. @Нуржан. Есть и другая проблема. Мое соединение Wi-Fi постоянно падает и не может быть исправлено до сих пор. (это следующий вопрос, который я скоро опубликую, потому что ни один из ответов на похожие проблемы не сработал). Поэтому удаление сейчас не очень хорошая идея.
4. @user Убедитесь, что у вас действительно есть virtualenv и pip и что вы знаете, как их использовать.