pip WindowsLinuxmacOSPython 3

pip: Не устанавливается пакет из-за несовместимости Python

  • Обновлено
  • Чтение ≈ 2 минуты

Краткий ответ

pip install может отказаться ставить пакет, если метаданные проекта требуют другой Python (Requires-Python). Подмена ограничений обычно приводит к несовместимому коду, поэтому сначала проверяют версии Python и библиотеки.

В этой статье
  1. Что происходит и когда возникает ошибка
  2. Причины и признаки
  3. Подробная диагностика и исправление
  4. Проверка результата и действия при неуспехе

#Что происходит и когда возникает ошибка

pip install может отказаться ставить пакет, если метаданные проекта требуют другой Python (Requires-Python). Подмена ограничений обычно приводит к несовместимому коду, поэтому сначала проверяют версии Python и библиотеки.

#Причины и признаки

Возможная причинаКак узнатьЧто делать
Требуется более новый PythonПроект ограничил минимальную поддерживаемую версию.В выводе есть requires Python >=...Установить подходящий Python в отдельную среду.
Последние версии больше не поддерживают старый PythonДоступны только старые выпуски библиотеки.pip пишет, что игнорирует версии с несовместимыми требованиямиВыбрать подтверждённый совместимый выпуск.
Путаются Python и pippip проверяет совместимость со своим интерпретатором.Python в приложении другой, чем в команде установкиУточнить интерпретатор через -m.

#Подробная диагностика и исправление

  1. Сохраните полный текст про версииСкопируйте часть вывода Ignored the following versions that require a different python version или Package ... requires a different Python. Укажите точное имя библиотеки и запрошенную версию; подстрока >=3.10 означает минимальную версию, а не совет установить «последний» Python.
  1. Выведите реальные версииВ терминале каталога проекта выполните команды и сравните python -V с pip ... (python X.Y). Если они отличаются, вызывайте установку только как python -m pip в целевом окружении.
    Linux · Терминал (Bash)Команда
    Подходит в активном окружении Linux/macOS/Windows; не требует администратора.
    python -V
    python -m pip --version
  1. Посмотрите кандидатов и ограниченияВ отдельной тестовой среде вызовите python -m pip index versions ИМЯ_ПАКЕТА. Вывод показывает доступные версии, но не гарантирует совместимость каждого выпуска. Для точных ограничений изучите страницу пакета и Requires-Python в метаданных релизов.
    Linux · Терминал (Bash)Команда
    Для последних версий pip; запрос к настроенному индексу по сети, без установки.
    python -m pip index versions ИМЯ_ПАКЕТА
  1. Выберите два безопасных путиЕсли приложение допускает новую версию Python, установите её рядом и создайте новое venv, не заменяя системную. Если Python обновить нельзя, закрепите выпуск пакета, который официально поддерживает вашу версию: python -m pip install "ИМЯ_ПАКЕТА==X.Y.Z". Замените X.Y.Z на проверенный выпуск, не используйте случайное число.
  1. Предварительно оцените зависимостиДля поддерживаемого выпуска проверьте разрешение в тестовой среде через --dry-run; pip должен показать список планируемых установок. Если конфликт зависимостей останется, найдите ограничивающие требования в requirements.txt и разберите их, не игнорируйте их вслепую.
  2. X.Y.Z — заменяемый пример
    Linux · Терминал (Bash)Команда
    X.Y.Z — заменяемый пример. Dry-run доступен в современных версиях pip; нужен доступ к индексу.
    python -m pip install --dry-run "ИМЯ_ПАКЕТА==X.Y.Z"
  1. Прогоните импорт и регрессионный тестВ созданном окружении установите выбранный совместимый выпуск, проверьте pip check и запустите приложение. Если модуль импортируется, но ломается API, проблема уже в несовместимости кода с выбранным выпуском, а не в pip.

#Проверка результата и действия при неуспехе

Пакет устанавливается без Requires-Python и приложение проходит хотя бы свой основной сценарий. Список установленных версий сохраните для воспроизводимости.

Если исправление не помогло, вернитесь к точному сообщению об ошибке, сохраните версию Python, адрес целевого окружения и очищенный от секретов журнал; выясните, на каком шаге результат отличается от ожидаемого. Не изменяйте глобальный Python ради устранения сбоя проекта.

Так эту ошибку тоже называют

Источники и обновления

Последнее обновление статьи: 2 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.