ensurepip — Настройка установщика pip
Новое в версии 3.4.
Пакет ensurepip предоставляет поддержку настройки установщика pip в существующей установке Python или виртуальной среде. Данный подход к настройке отражает тот факт, что pip — это независимый проект со своим циклом выпуска, и последняя доступная стабильная версия включена в релизы CPython с поддержкой и новыми функциями.
В большинстве случаев конечным пользователям Python не нужно вызывать этот модуль напрямую (так как pip должен быть настроен по умолчанию), но он может потребоваться, если установка pip была пропущена при установке Python (или при создании виртуальной среды) или после явного удаления pip.
Примечание
Этот модуль не обращается к интернету. Все компоненты, необходимые для настройки pip включены в состав пакета.
См. также
- Установка модулей Python
- Руководство для конечного пользователя по установке пакетов Python
- PEP 453: Явная настройка pip в установках Python
- Исходное обоснование и спецификация для этого модуля.
1. Командная строка
Интерфейс командной строки вызывается с помощью переключателя -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: if a “default pip” installation is requested, the -
pipскрипт будет установлен дополнительно к двум обычным скриптам.
-
Использование обеих опций выбора скриптов вызовет исключение.
2. 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от операции настройки.Примечание
Процесс настройки имеет побочные эффекты как для
sys.path, так и дляos.environ. Вызов интерфейса командной строки в дочернем процессе позволяет избежать этих побочных эффектов.Примечание
Процесс настройки может установить дополнительные модули, необходимые для
pip, но другое ПО не должно предполагать, что эти зависимости будут всегда присутствовать по умолчанию (так как зависимости могут быть удалены в будущих версияхpip).
© 2001–2020 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.5/library/ensurepip.html