Bezdepbonusu7Программирование: статьи и ответы

Ошибки Python

Ошибка "pip не является внутренней или внешней командой": причины и как исправить

Редакция Bezdepbonusu76 мин чтения

Ошибка "pip не является внутренней или внешней командой" значит, что Windows не находит pip.exe в PATH. Быстрое решение - python -m pip install, а навсегда проблема уходит после добавления папки Scripts в переменные среды. Ниже диагностика и все варианты исправления.

Командная строка Windows с ошибкой pip не является внутренней командой
Фото: Microsoft Corporation The original uploader was Kurmanbek at Wikipedia, Public domain, Wikimedia Commons
Содержание
  1. Что значит ошибка
  2. Быстрое решение
  3. Диагностика
  4. Причины и решения
  5. Добавить в PATH
  6. Если pip не установлен
  7. Несколько версий
  8. Скрипты и автоматизация
  9. VS Code, PyCharm, Linux
  10. Частые вопросы

Что означает ошибка "pip не является внутренней или внешней командой"

Полный текст в командной строке Windows выглядит так:

"pip" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

В английской Windows это 'pip' is not recognized as an internal or external command, а в PowerShell: pip: Имя "pip" не распознано как имя командлета, функции, файла сценария или выполняемой программы. Смысл везде один: Windows перебрала все папки из переменной PATH и не нашла в них файл pip.exe.

Сам pip при этом почти всегда установлен. Он лежит в подпапке Scripts рядом с Python, просто эта подпапка не прописана в PATH. Поэтому ошибка лечится настройкой, а не переустановкой, хотя переустановка тоже помогает.

Быстрое решение за 10 секунд: python -m pip

Если нужно поставить пакет прямо сейчас, вызовите pip через интерпретатор. Флаг -m запускает модуль pip из того Python, который вы указали, и PATH к папке Scripts не нужен.

python -m pip install requests
# если не работает python, через лаунчер
py -m pip install requests

Этот способ официально рекомендует документация pip, особенно на Windows. Он еще и надежнее: вы точно знаете, в какую версию Python ставится пакет.

Если и python, и py выдают ту же ошибку, значит, Python не установлен или не попал в PATH целиком. Тогда начните с инструкции как установить Python на Windows, там подробно разобрана галочка Add python.exe to PATH.

Как найти причину: 4 команды для диагностики

Откройте новое окно cmd и выполните по очереди:

where python
where pip
py -0
py -c "import sys; print(sys.executable)"
  1. where python показывает все найденные python.exe. Если единственная строка ведет в ...\Microsoft\WindowsApps, это заглушка Microsoft Store, а настоящего Python в PATH нет.
  2. where pip на проблемной системе выдаст "Не удается найти файлы по заданным шаблонам". Это подтверждает, что Scripts не в PATH.
  3. py -0 перечисляет версии, которые видит лаунчер. Если версии есть, Python установлен.
  4. Последняя команда выводит точный путь к python.exe. Папка Scripts лежит рядом с ним.

Загляните в эту папку Scripts в Проводнике. Если там есть pip.exe, осталось добавить путь в PATH. Если папки нет или она пустая, pip не установлен, и нужен ensurepip.

Причины ошибки и способы исправления

ПричинаКак распознатьРешение
Папка Scripts не в PATHpython работает, pip нет, pip.exe в Scripts естьДобавить Scripts в PATH
Python вообще не в PATHpython тоже не находится, py работаетДобавить обе папки или переустановить с галочкой PATH
pip не установленПапки Scripts нет или в ней нет pip.exepython -m ensurepip --upgrade
Терминал открыт до изменения PATHВ новом окне все работаетПерезапустить терминал или редактор
Несколько версий Pythonpip ставит пакеты не туда, where выводит несколько путейpy -3.14 -m pip и порядок путей в PATH
Python из Microsoft Store или заглушкаПуть содержит WindowsAppsОтключить псевдонимы выполнения приложений

Как добавить pip в PATH на Windows 10 и 11

  1. Узнайте путь к Python командой py -c "import sys; print(sys.executable)". Например: C:\Users\Ivan\AppData\Local\Programs\Python\Python314\python.exe.
  2. Нажмите Win и введите "Изменение системных переменных среды". В открывшемся окне нажмите "Переменные среды".
  3. В блоке переменных пользователя выделите Path и нажмите "Изменить".
  4. Нажмите "Создать" и вставьте папку с python.exe. Затем еще раз "Создать" и вставьте ту же папку с окончанием \Scripts.
  5. Поднимите обе строки выше строки с WindowsApps.
  6. Нажмите OK во всех окнах, закройте все терминалы и редакторы и откройте новый cmd.
  7. Проверьте: pip --version.

Указывайте именно папку, а не файл. Строка ...\Scripts\pip.exe в PATH работать не будет.

Совет: не используйте команду setx PATH "%PATH%;...", которую советуют на старых форумах. Она склеивает системный и пользовательский PATH в один и обрезает результат до 1024 символов. После этого могут перестать работать другие программы. Редактор переменных в графическом окне безопаснее.

Если pip не установлен: ensurepip и переустановка

Бывает, что при выборочной установке сняли галочку pip, или Python собран без него. В стандартную библиотеку входит модуль ensurepip, который ставит pip из комплекта:

python -m ensurepip --upgrade
python -m pip install --upgrade pip

Если ensurepip не помог, запустите установщик Python еще раз (тот же файл .exe или через "Установленные приложения" - Изменить), выберите Modify, отметьте pip, на следующем экране включите Add Python to environment variables и нажмите Install. Удалять Python для этого не нужно.

С новым Python install manager pip ставится вместе с каждой версией. Если ошибка появилась после перехода на менеджер, выполните py install --configure: он проверит настройку и предложит добавить свой каталог с командами в PATH.

pip при нескольких версиях Python

Когда в системе стоят, например, 3.12 и 3.14, команда pip относится к той версии, чья папка Scripts стоит в PATH выше. Отсюда классическая ситуация: пакет установлен, но import выдает ModuleNotFoundError, потому что код запускается другим интерпретатором.

Правило, которое снимает проблему: ставьте пакеты той же командой, которой запускаете код.

py -3.14 -m pip install requests
py -3.14 main.py

python -m pip show requests   # куда установлен пакет

Еще надежнее работать в виртуальном окружении: внутри него pip и python всегда из одной папки, и PATH к глобальному Python вообще не важен. Как его создать, описано в статье о виртуальном окружении venv и requirements.txt.

Ошибка pip в bat-файлах, планировщике и CI

Отдельный случай - когда в терминале все работает, а bat-файл, задача Планировщика Windows или сборка в CI падает с той же ошибкой. Причины обычно такие:

  • Python поставлен в том же скрипте. Тихая установка с ключом PrependPath=1 меняет PATH в реестре, но текущий процесс cmd об этом не знает. Новые значения появятся только в следующем окне.
  • Задача запускается от другого пользователя. Пользовательский PATH у учетной записи SYSTEM или служебного пользователя свой, и вашей папки Scripts там нет.
  • Агент CI использует свой образ. На нем может стоять другая версия Python или его нет совсем.

Решение для всех трех случаев одно: в скриптах не полагайтесь на PATH, указывайте интерпретатор явно.

@echo off
set PY=C:\Python314\python.exe
"%PY%" -m pip install -r requirements.txt
"%PY%" main.py

Такой bat-файл работает одинаково в любом окне, в планировщике и от любого пользователя, у которого есть доступ к папке C:\Python314. Если проект использует виртуальное окружение, подставьте путь к .venv\Scripts\python.exe.

Ошибка в VS Code, PyCharm и на Linux

VS Code и PyCharm

Встроенный терминал редактора получает PATH при запуске редактора. Если вы поправили переменные среды, а VS Code был открыт, перезапустите его полностью, иначе ошибка останется. Также проверьте выбранный интерпретатор: в VS Code это Python: Select Interpreter в палитре команд, в PyCharm раздел Python Interpreter в настройках проекта.

Linux и macOS: pip: command not found

Аналог ошибки на Unix-системах. Варианты решения:

  • Попробуйте pip3 или python3 -m pip: во многих дистрибутивах команда pip без цифры отсутствует.
  • В Debian и Ubuntu pip ставится отдельным пакетом: sudo apt install python3-pip.
  • Если pip ругается на externally-managed-environment, ставьте пакеты в виртуальное окружение, а не в системный Python.

Больше команд терминала для новичков собрано в материале команды Linux для начинающих, а все статьи по языку - в разделе Python.

Частые вопросы

Почему python работает, а pip нет?

В PATH добавлена только папка с python.exe, а подпапка Scripts, где лежит pip.exe, нет. Добавьте Scripts в PATH или вызывайте pip как python -m pip.

Нужно ли переустанавливать Python из-за этой ошибки?

Обычно нет. Достаточно добавить папку Scripts в PATH или выполнить python -m ensurepip --upgrade. Переустановка в режиме Modify нужна, если pip не был установлен вовсе.

Чем pip отличается от python -m pip?

Результат одинаковый, но python -m pip гарантирует, что пакет ставится в тот Python, который вы вызываете, и не зависит от наличия папки Scripts в PATH.

Я добавил путь в PATH, но ошибка осталась. Что делать?

Закройте все окна терминала и редактор кода и откройте их заново. Проверьте, что в PATH указана папка Scripts, а не файл pip.exe, и что строка стоит выше WindowsApps.

Как проверить, установлен ли pip?

Выполните python -m pip --version или py -m pip --version. Если выводится версия pip и путь, он установлен, и проблема только в PATH.

Источники

  • Installing Python Modules, Python documentation, 2026
  • ensurepip - Bootstrapping the pip installer, Python documentation, 2026
  • Installation, pip documentation, 2026
  • Using Python on Windows, Python documentation, 2026

PythonWindows

Похожие материалы

Версии программ и команды проверены на дату публикации. Если что-то изменилось, сверяйтесь с официальной документацией. Нашли неточность? Напишите на admin@bezdepbonusu7.win.