Решение: pip устанавливает пакеты, но не находит исполняемые
Быстрый ответ
Проблема чаще всего сводится к тому, что путь установки исполняемых файлов, установленных при помощи pip, не числится в вашей переменной среды PATH. Для решения этой проблемы выполните следующие действия:
Для Windows:
setx PATH "%PATH%;C:\Users\ВашеИмяПользователя\AppData\Local\Programs\Python\PythonXX\Scripts"
(Замените PythonXX
на используемую вами версию Python)
Для Unix-подобных систем (Linux/macOS):
echo 'export PATH="$PATH:/home/вашеимяпользователя/.local/bin"' >> ~/.bashrc
(Чтобы применить изменения, воспользуйтесь командой source ~/.bashrc
или просто перезагрузите терминал)
Убедитесь, что указанные пути соответствуют расположению Python, установленного на вашем компьютере.
Уяснение сущности переменной PATH
PATH — это переменная окружения, содержащая перечень директорий, которые система просматривает при поиске команд. Если после установки пакета через pip, включающего исполняемые файлы, они оказываются вне PATH, то система не может вызвать их из командной строки.
Для просмотра текущего содержимого переменной PATH используйте:
echo $PATH
Проверьте, включает ли PATH директорию, куда pip помещает скрипты (как правило, это ~/.local/bin
в Unix-подобных системах). Если этой директории нет, вам потребуется ее добавить.
Как сформировать PATH корректно
Добавление пути в файл настроек вашего терминала (.bashrc или .bash_profile) будет полезным для сохранения изменений в будущих сеансах:
echo 'export PATH="$PATH:/путь/к/директории"' >> ~/.bashrc
source ~/.bashrc
Если у вас установлено несколько версий Python, добавьте в PATH справочник bin
требуемой версии Python:
echo 'export PATH="$PATH:~/.local/bin/python3.X/bin"' >> ~/.bashrc
Выявляем причины отсутствия исполняемых файлов
Если вы уверены в правильности значения PATH, но проблема всё же сохраняется, возможными причинами могут быть:
- Несколько установок Python: Проведите двойную проверку PATH на предмет соответствия версии. Можно использовать команду
which python
. - Пользовательская установка Python: Если установка осуществлялась с ключом
--user
, проверьте директорию установки через модульsite
в Python. - Нестандартные места установки: Путь до исполняемого файла может быть вне PATH.
Визуализация
Представьте окружение Python как ящик для инструментов (🧰
), в котором хранятся инструменты (🛠️
) и перчатки (🧤
).
Когда устанавливаете пакет через pip, инструмент (🛠️
) может оказаться спрятанным внутри ящика и без указания в PATH (🏞️
) система его не "видит".
Настройка переменной PATH аналогична созданию карты расположения инструментов (🛠️
), что позволяет вам легко обнаружить их при необходимости.
Если пакеты установлены, но исполняемые файлы недоступны, просто обновите ваш PATH (🔍 в 🏞️
), и вы обнаружите необходимые инструменты (🛠️
) и перчатки (🧤
).
Другие методы решения этой проблемы
Проверка при помощи команды ‘which’
Для обнаружения пути до установленных исполняемых файлов используется команда which
:
which <имя_исполняемого_файла>
Обзор пользовательской директории Python
При установке пакетов с ключом --user
для определения директории пользовательской установки пользуйтесь командой:
python -m site --user-base
Не забудьте добавить /bin
(для Unix-подобных систем) или \Scripts
(для Windows) к пути при обновлении PATH.
Перезагрузите вашу оболочку
Обновить настройки терминала и применить изменения в PATH можно таким образом:
source ~/.bash_profile # для macOS
source ~/.bashrc # для Unix-подобных систем
Сделайте изменения PATH динамичными
Скрипты и инструменты вроде pyenv помогут вам динамично настраивать PATH при регулярной работе с различными окружениями Python.
Полезные материалы
- python – pip installs packages successfully, but executables not found from command line – Stack Overflow — Советы и подходы к решению проблем с pip.
- 12. Виртуальные окружения и пакеты — Документация Python 3.12.2 — Руководство по использованию виртуальных окружений в Python.
- Установка пакетов – Руководство пользователя по упаковке Python — Инструкции по установке пакетов через pip.
- Часто Задаваемые Вопросы о Python на Windows — Документация Python 3.12.2 — FAQ по использованию Python на платформе Windows.
- Как добавить Python в PATH Windows – Data to Fish — Руководство по добавлению Python в PATH в операционной системе Windows.
- sc.exe create | Microsoft Learn — Информация о создании и управлении службами Windows для приложений на Python.