Содержание страницы
27.2. ensurepip – Начальная установка pip установщика¶ensurepip – Bootstrapping the pip installer
Новое в версии 2.7.9.
Пакет ensurepip обеспечивает поддержку начальной установки установщика pip
в существующую установку Python или виртуальное окружение. Такой подход
к начальной установке отражает тот факт, что pip – это независимый
проект с собственным циклом выпуска, и последняя доступная стабильная версия
включается в выпуски с исправлениями и новыми функциями эталонного интерпретатора
CPython.
В большинстве случаев конечным пользователям Python не нужно напрямую вызывать этот модуль (так как pip должен быть загружен по умолчанию), но это может потребоваться, если установка pip была пропущена при установке Python (или при создании виртуального окружения) или после явного удаления pip.
Примечание
Этот модуль не обращается к интернету. Все компоненты, необходимые для начальной установки pip, включены как внутренние части пакета.
См. также
- Установка модулей Python
Руководство конечного пользователя по установке пакетов Python
- PEP 453: Явная начальная установка pip в установках Python
Исходные обоснование и спецификация этого модуля.
- PEP 477: перенос ensurepip (PEP 453) в Python 2.7.
Обоснование и спецификация переноса PEP 453 в Python 2.7.
27.2.1. Интерфейс командной строки¶Command line interface
Интерфейс командной строки вызывается с помощью ключа -m интерпретатора.
Самый простой вызов:
python -m ensurepip
Этот вызов установит pip, если он ещё не установлен,
но в противном случае ничего не делает. Чтобы установленная версия pip
была не менее новой, чем та, которая поставляется с ensurepip, используйте
опцию --upgrade:
python -m ensurepip --upgrade
По умолчанию pip устанавливается в текущее виртуальное окружение (если оно активно) или в системные site-packages (если активное виртуальное окружение отсутствует). Расположение установки можно контролировать с помощью двух дополнительных параметров командной строки:
--root <dir>: Устанавливаетpipотносительно указанного корневого каталога, а не корня текущего активного виртуального окружения (если оно есть) или корня по умолчанию для текущей установки Python.--user: Устанавливаетpipв каталог пользовательских пакетов, а не глобально для текущей установки Python (эта опция не разрешена внутри активного виртуального окружения).
По умолчанию будут установлены скрипты pip, pipX и pipX.Y (где X.Y обозначает версию Python, используемую для вызова ensurepip). Устанавливаемые скрипты можно контролировать с помощью двух дополнительных параметров командной строки:
--altinstall: если запрашивается альтернативная установка, скриптыpipиpipXне будут установлены.--no-default-pip: если запрашивается нестандартная установка, скриптpipне будет установлен.
Изменено в версии 2.7.15: Код возврата не равен нулю, если команда завершается с ошибкой.
27.2.2. API модуля¶Module API
ensurepip предоставляет две функции для программного использования:
-
ensurepip.version()¶ Возвращает строку, указывающую версию pip, входящую в поставку, которая будет установлена при начальной настройке окружения.
-
ensurepip.bootstrap(root=None, upgrade=False, user=False, altinstall=False, default_pip=True, verbosity=0)¶ Выполняет начальную установку
pipв текущее или указанное окружение.root задаёт альтернативный корневой каталог, относительно которого производится установка. Если root равен
None, то установка использует расположение по умолчанию для текущего окружения.upgrade указывает, следует ли обновить существующую установку более ранней версии
pipдо версии, входящей в поставку.user указывает, следует ли использовать пользовательскую схему вместо глобальной установки.
По умолчанию будут установлены скрипты
pip,pipXиpipX.Y(где X.Y обозначает текущую версию Python).Если параметр altinstall установлен, то скрипты
pipиpipXне будут установлены.Если параметр default_pip установлен в
False, тоpipне будет установлен.Установка обоих altinstall и default_pip вызовет
ValueError.verbosity управляет уровнем вывода в
sys.stdoutот операции начальной загрузки.Примечание
Процесс начальной загрузки имеет побочные эффекты как на
sys.path, так и наos.environ. Вызов интерфейса командной строки в подпроцессе, напротив, позволяет избежать этих побочных эффектов.Примечание
Процесс начальной загрузки может устанавливать дополнительные модули, необходимые для
pip, но другое программное обеспечение не должно предполагать, что эти зависимости всегда будут присутствовать по умолчанию (поскольку зависимости могут быть удалены в будущей версииpip).