Документация Python неофициальный перевод
Содержание страницы

ensurepip – Начальная загрузка установщика pipensurepip – Bootstrapping the pip installer

Новое в версии 3.4.

Исходный код: Lib/ensurepip


Пакет ensurepip обеспечивает поддержку начальной установки установщика pip в существующую установку Python или виртуальное окружение. Такой подход к начальной установке отражает тот факт, что pip – это независимый проект с собственным циклом выпуска, и последняя доступная стабильная версия включается в выпуски с исправлениями и новыми функциями эталонного интерпретатора CPython.

В большинстве случаев конечным пользователям Python не нужно вызывать этот модуль напрямую (поскольку pip должен устанавливаться по умолчанию), но это может понадобиться, если установка pip была пропущена при установке Python (или при создании виртуального окружения) или после явного удаления pip.

Примечание

Этот модуль не обращается к интернету. Все компоненты, необходимые для начальной установки pip, включены как внутренние части пакета.

См. также

Установка модулей Python

Руководство конечного пользователя по установке пакетов Python

PEP 453: Явная начальная установка pip в установках Python

Исходные обоснование и спецификация этого модуля.

Интерфейс командной строки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 (эта опция не разрешена внутри активного виртуального окружения).

По умолчанию будут установлены скрипты pipX и pipX.Y (где X.Y обозначает версию Python, используемую для вызова ensurepip). Устанавливаемые скрипты можно контролировать с помощью двух дополнительных параметров командной строки:

  • --altinstall: если запрашивается альтернативная установка, сценарий pipX не будет установлен.

  • --default-pip: если запрашивается установка «pip по умолчанию», сценарий pip будет установлен дополнительно к двум обычным сценариям.

Указание обоих параметров выбора скриптов приведёт к исключению.

API модуляModule API

ensurepip предоставляет две функции для программного использования:

ensurepip.version()

Возвращает строку, указывающую доступную версию pip, которая будет установлена при начальной установке окружения.

ensurepip.bootstrap(root=None, upgrade=False, user=False, altinstall=False, default_pip=False, verbosity=0)

Выполняет начальную установку pip в текущее или указанное окружение.

root задаёт альтернативный корневой каталог, относительно которого производится установка. Если root равен None, то установка использует расположение по умолчанию для текущего окружения.

upgrade указывает, следует ли обновлять существующую установку более ранней версии pip до доступной версии.

user указывает, следует ли использовать пользовательскую схему вместо глобальной установки.

По умолчанию будут установлены скрипты pipX и pipX.Y (где X.Y обозначает текущую версию Python).

Если altinstall установлен, то pipX не будет установлен.

Если default_pip установлен, то pip будет установлен дополнительно к двум обычным скриптам.

Установка обоих altinstall и default_pip вызовет ValueError.

verbosity управляет уровнем вывода в sys.stdout от операции начальной загрузки.

Вызывает событие аудита ensurepip.bootstrap с аргументом root.

Примечание

Процесс начальной загрузки имеет побочные эффекты как на sys.path, так и на os.environ. Вызов интерфейса командной строки в подпроцессе, напротив, позволяет избежать этих побочных эффектов.

Примечание

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