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