Python не видит библиотеку после использования интерпретатора conda
Здравствуйте, моя проблема заключается в том, что Python не видит библиотеки после использования интерпретатора conda. Когда-то давно я поставил себе Anaconda и использовал его в своих проектах. Недавно мне понадобилось использовать интерпретатор Python 3.12 из папки /usr/local/bin/python 3.12 Сам python работает корректно, но когда я пытаюсь импортировать какую нибудь библиотеку, он выдает ошибку ModuleNotFoundError: No module named. Если выбрать интерпретатор conda, то при импорте этой библиотеки в проект все работает штатно. проблема не исчезла после команды pip install
/usr/local/bin/python3.12 /Users/EV/Desktop/test/main.py
[virsi:~/Desktop/test] EV% /usr/local/bin/python3.12 /Users/EV/Desktop/test/main.py
Traceback (most recent call last):
File "/Users/EV/Desktop/test/main.py", line 1, in <module>
import PIL
ModuleNotFoundError: No module named 'PIL'
[virsi:~/Desktop/test] EV%
Помимо изменения интерпретатора, необходимо также создать новое виртуальное окружение и загрузить туда нужную библиотеку
Ответы (1 шт):
Через терминал активировать нужное окружение Python можно так:
$ source /usr/local/bin/python3.12/bin/activate
Уже после этого при вызове pip будет вызван pip активированного окружения. И устанавливать пакеты он будет в директорию активированного окружения. И если теперь в этом окружении вы запустите Python, то установленные вами библиотеки должны быть на месте.
Однако хорошей практикой является использование виртуального окружения. Зайдите в директорию своего проекта, где находится исходный код. Можете предварительно выполнить активацию окружения:
$ source /usr/local/bin/activate
Затем создайте локальную версию интерпретатора Python в папке .venv, например:
$ python -m venv .venv
Теперь можно активировать созданное окружение:
$ source .venv/bin/activate
И дальше работать с ним, как обычно: устанавливать в него пакеты, удалять ненужные и т.д. Это гораздо удобнее, чем использовать для всего единственный интерпретатор из /usr.