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–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.13/library/ensurepip.html