Python не видит путь к библеотекам виртуального окружения
возникает ошибка при написании программы. Создаю виртуальное окружение командой python -m venv .venv, находясь в директории проекта, активирую его через source ./.venv/bin/activate, устанавливаю туда модули (например scapy) через pip install, pip list выводит установленный модуль, Pylance корректно определяет модуль.
Однако при импорте данного (и любых других, устанавливаемых через pip install) пакета с активированным venv интерпритатор выдает ошибку ModuleNotFoundError: No module named 'name'. Помогает прописывание в начале программы
sys.path.append(
"/home/Username/Folder/Python/Project/.venv/lib/python3.12/site-packages"
)
Но это явный костыль, и хотелось бы исправить ошибку в корне.
Вывод sys.path без ручного добавления site-packages: ['/home/Username/Folder/Python/Project', '/usr/lib/python312.zip', '/usr/lib/python3.12', '/usr/lib/python3.12/lib-dynload', '/usr/local/lib/python3.12/dist-packages', '/usr/lib/python3/dist-packages']
Если это имеет значение, то у меня в системе установлен пакет python-is-python3.
which python / which python3 ссылаются на /home/Username/Folder/Python/Project/.venv/bin/python или python3 соответсвенно.
Заранее извиняюсь, если вопрос окажется наивным и глупым, на Линуксе сижу недавно
Ответы (1 шт):
Вопрос саморешился. Интерпритатор был не виноват, требовалось изменить параметры запуска кода. (условно с run code на run file)