ensurepip
— Загрузка установщика pip
¶
Добавлено в версии 3.4.
Исходный код: Lib/ensurepip
Пакет ensurepip
обеспечивает поддержку начальной загрузки установщика pip
в существующую установку Python или виртуальную среду. Такой подход к начальной загрузке отражает тот факт, что pip
является независимым проектом со своим собственным циклом выпуска, а последняя доступная стабильная версия поставляется в комплекте с обновлениями для обслуживания и функциональными возможностями справочного интерпретатора CPython.
В большинстве случаев конечным пользователям Python не нужно вызывать этот модуль напрямую (поскольку pip
должен быть загружен по умолчанию), но это может потребоваться, если установка pip
была пропущена при установке Python (или при создании виртуальной среды) или после явного удаления pip
.
Примечание
Этот модуль не имеет доступа к Интернету. Все компоненты, необходимые для начальной загрузки pip
, включены в комплект поставки в качестве внутренних компонентов.
См.также
- Установка модулей Python
Руководство конечного пользователя по установке пакетов Python
- PEP 453: Явная загрузка pip в установках Python
Первоначальное обоснование и спецификация для этого модуля.
Availability: это не Emscripten, это был не я.
Этот модуль не работает или недоступен на платформах WebAssembly wasm32-emscripten
и wasm32-wasi
. Дополнительную информацию смотрите в разделе Платформы веб-сборки.
Интерфейс командной строки¶
Интерфейс командной строки вызывается с помощью параметра интерпретатора -m
.
Самый простой возможный вызов - это:
python -m ensurepip
Этот вызов установит pip
, если он еще не установлен, но в остальном ничего не делает. Чтобы убедиться, что установленная версия pip
не менее свежая, чем версия, доступная в ensurepip
, укажите параметр --upgrade
:
python -m ensurepip --upgrade
По умолчанию pip
устанавливается в текущую виртуальную среду (если она активна) или в пакеты системного сайта (если активной виртуальной среды нет). Местом установки можно управлять с помощью двух дополнительных параметров командной строки:
--root dir
: Устанавливаетpip
относительно данного корневого каталога, а не корневого каталога текущей активной виртуальной среды (если таковой имеется) или корневого каталога по умолчанию для текущей установки Python.--user
: Устанавливаетpip
в каталог пакетов пользовательского сайта, а не глобально для текущей установки Python (этот параметр запрещен в активной виртуальной среде).
По умолчанию будут установлены скрипты pipX
и pipX.Y
(где X.Y означает версию Python, используемую для вызова ensurepip
). Установленными скриптами можно управлять с помощью двух дополнительных параметров командной строки:
--altinstall
: если будет запрошена альтернативная установка, скриптpipX
не будет установлен.--default-pip
: если запрашивается установка «pip по умолчанию», скриптpip
будет установлен в дополнение к двум обычным скриптам.
Предоставление обоих вариантов выбора сценария вызовет исключение.
Модуль API¶
ensurepip
предоставляет две функции для программного использования:
- ensurepip.version()¶
Возвращает строку, указывающую доступную версию pip, которая будет установлена при начальной загрузке среды.
- ensurepip.bootstrap(root=None, upgrade=False, user=False, altinstall=False, default_pip=False, verbosity=0)¶
Загружает
pip
в текущую или назначенную среду.root указывает альтернативный корневой каталог для установки относительно. Если значение root равно
None
, то при установке используется расположение установки по умолчанию для текущей среды.обновить указывает, следует ли обновлять существующую установку более ранней версии
pip
до доступной версии.пользователь указывает, следует ли использовать пользовательскую схему, а не устанавливать глобально.
По умолчанию будут установлены скрипты
pipX
иpipX.Y
(где X.Y означает текущую версию Python).Если установлен параметр altinstall, то
pipX
не будет установлен.Если задан параметр default_pip, то в дополнение к двум обычным скриптам будет установлен
pip
.Установка как altinstall, так и default_pip приведет к срабатыванию
ValueError
.подробность определяет уровень вывода на
sys.stdout
после операции начальной загрузки.Создает auditing event
ensurepip.bootstrap
с аргументомroot
.Примечание
Процесс начальной загрузки имеет побочные эффекты как для
sys.path
, так и дляos.environ
. Вместо этого вызов интерфейса командной строки в подпроцессе позволяет избежать этих побочных эффектов.Примечание
В процессе начальной загрузки могут быть установлены дополнительные модули, требуемые
pip
, но другое программное обеспечение не должно предполагать, что эти зависимости всегда будут присутствовать по умолчанию (поскольку зависимости могут быть удалены в будущей версииpip
).