ensurepip — Инициализация установщика pip
Добавлено в версии 3.4.
Исходный код: Lib/ensurepip
Пакет ensurepip обеспечивает поддержку инициализации установщика pip в существующей установке Python или виртуальной среде. Такой подход к инициализации отражает тот факт, что pip — независимый проект с собственным циклом выпуска, а последняя доступная стабильная версия входит в состав выпусков CPython с исправлениями и новыми возможностями.
В большинстве случаев конечным пользователям Python не потребуется вызывать этот модуль напрямую (так как pip должна быть инициализирована по умолчанию), но он может понадобиться, если установка pip была пропущена при установке Python (или создании виртуальной среды) либо после явного удаления pip.
Примечание
Этот модуль не обращается к интернету. Все компоненты, необходимые для инициализации pip, включены в пакет как его внутренние части.
См. также
- Установка модулей Python
-
Руководство для конечных пользователей по установке пакетов Python
- PEP 453: Явная инициализация pip в установках Python
-
Исходное обоснование и спецификация этого модуля.
Доступность: недоступен на Android, iOS и WASI.
Этот модуль не поддерживается на мобильных платформах и платформах WebAssembly.
Интерфейс командной строки
Интерфейс командной строки вызывается с помощью переключателя -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, для установки используется расположение по умолчанию в текущей среде.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они могут быть удалены).
© 2001–2025 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.13/library/ensurepip.html