ensurepip — Подготовка установщика pip
Добавлено в версии 3.4.
Исходный код: Lib/ensurepip
Пакет ensurepip обеспечивает подготовку установщика pip для существующей установки Python или виртуального окружения. Такой подход отражает тот факт, что pip — это независимый проект со своим циклом выпуска, а последняя доступная стабильная версия включается в выпуски CPython, содержащие исправления и новые функции.
В большинстве случаев конечным пользователям Python не нужно напрямую вызывать этот модуль (так как pip по умолчанию должен быть подготовлен), однако это может понадобиться, если установка pip была пропущена при установке Python (или при создании виртуального окружения) либо после явного удаления pip.
Примечание
Этот модуль не обращается к интернету. Все компоненты, необходимые для подготовки pip, включены в пакет.
См. также
- Установка модулей Python
-
Руководство для конечных пользователей по установке пакетов Python
- PEP 453: Явная подготовка pip в установках Python
-
Исходное обоснование и спецификация этого модуля.
Доступность: не поддерживается в Emscripten и WASI.
Этот модуль не работает или недоступен на платформах WebAssembly wasm32-emscripten и wasm32-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.12/library/ensurepip.html