# `ensurepip` — Bootstrapping the `pip` installer

Added in version 3.4.

Source code: Lib/ensurepip

The `ensurepip` package provides support for bootstrapping the `pip` installer into an existing Python installation or virtual environment. This bootstrapping approach reflects the fact that `pip` is an independent project with its own release cycle, and the latest available stable version is bundled with maintenance and feature releases of the CPython reference interpreter.

У більшості випадків кінцевим користувачам Python не потрібно викликати цей модуль напряму (оскільки `pip` має завантажуватися за замовчуванням), але це може знадобитися, якщо під час встановлення Python було пропущено встановлення `pip` (або під час створення віртуального середовища) або після явного видалення `pip`.

Примітка

Цей модуль не має доступ до Інтернету. Усі компоненти, необхідні для завантаження `pip`, включені як внутрішні частини пакунка.

This is an optional module. If it is missing from your copy of CPython, look for documentation from your distributor (that is, whoever provided Python to you). If you are the distributor, see Requirements for optional modules.

Дивись також

інсталяційний індекс

  Посібник кінцевого користувача для встановлення пакетів Python

PEP 453: Явне початкове завантаження pip у встановленнях Python

  Оригінальне обґрунтування та специфікація цього модуля.

Availability: not Android, not iOS, not WASI.

This module is not supported on mobile platforms or WebAssembly platforms.

## Command-line interface

Інтерфейс командного рядка викликається за допомогою перемикача `-m` інтерпретатора.

Найпростіший можливий виклик:

    python -m ensurepip

Цей виклик встановить `pip`, якщо він ще не встановлено, але в інших випадках нічого не робить. Щоб переконатися, що встановлена версія `pip` принаймні така ж остання, як та, доступна в `ensurepip`, передайте опцію `--upgrade`:

    python -m ensurepip --upgrade

За замовчуванням `pip` інсталюється в поточне віртуальне середовище (якщо воно активне) або в системні пакети сайту (якщо активного віртуального середовища немає). Розташуванням встановлення можна керувати за допомогою двох додаткових параметрів командного рядка:

--root <dir>

  Installs `pip` relative to the given root directory rather than the root of the currently active virtual environment (if any) or the default root for the current Python installation.

--user

  Installs `pip` into the user site packages directory rather than globally for the current Python installation (this option is not permitted inside an active virtual environment).

За замовчуванням буде встановлено сценарії `pipX` і `pipX.Y` (де X.Y означає версію Python, яка використовується для виклику `ensurepip`). Установленими сценаріями можна керувати за допомогою двох додаткових параметрів командного рядка:

--altinstall

  If an alternate installation is requested, the `pipX` script will not be installed.

--default-pip

  If a «default pip» installation is requested, the `pip` script will be installed in addition to the two regular scripts.

Надання обох параметрів вибору сценарію призведе до виключення.

## Модуль API

`ensurepip` exposes two functions for programmatic use:

ensurepip.version()

  Повертає рядок із зазначенням доступної версії pip, яка буде встановлена під час завантаження середовища.

ensurepip.bootstrap(root=None, upgrade=False, user=False, altinstall=False, default_pip=False, verbosity=0)

  Bootstraps `pip` в поточне або призначене середовище.

  root вказує альтернативний кореневий каталог для встановлення. Якщо root має значення `None`, тоді для встановлення використовується місце встановлення за замовчуванням для поточного середовища.

  upgrade вказує, чи потрібно оновлювати наявну інсталяцію попередньої версії `pip` до доступної версії.

  user вказує, чи слід використовувати схему користувача, а не глобальне встановлення.

  За замовчуванням буде встановлено сценарії `pipX` і `pipX.Y` (де X.Y означає поточну версію Python).

  Якщо встановлено altinstall, то `pipX` не буде встановлено.

  Якщо встановлено default_pip, то `pip` буде встановлено на додаток до двох звичайних сценаріїв.

  Налаштування як altinstall, так і default_pip спричинить `ValueError`.

  detality контролює рівень виведення в `sys.stdout` від операції початкового завантаження.

  Викликає подію аудиту `ensurepip.bootstrap` з аргументом `root`.

  Примітка

  Процес початкового завантаження має побічні ефекти як для `sys.path`, так і `os.environ`. Натомість виклик інтерфейсу командного рядка в підпроцесі дозволяє уникнути цих побічних ефектів.

  Примітка

  Процес завантаження може встановити додаткові модулі, необхідні для `pip`, але інше програмне забезпечення не повинно припускати, що ці залежності завжди будуть присутні за замовчуванням (оскільки залежності можуть бути видалені в майбутній версії `pip`).