Документация Python неофициальный перевод
Содержание страницы

Установка модулей PythonInstalling Python modules

Будучи популярным проектом с открытым исходным кодом, Python имеет активное поддерживающее сообщество участников и пользователей, которые также делают своё программное обеспечение доступным для использования другими разработчиками Python на условиях открытых лицензий.

Это позволяет пользователям Python эффективно обмениваться опытом и сотрудничать, извлекая пользу из решений, которые другие уже создали для общих (а иногда и редких!) проблем, а также потенциально внося свои собственные решения в общий пул.

Это руководство описывает часть процесса, связанную с установкой. За руководством по созданию и распространению собственных проектов Python обращайтесь к Руководству пользователя по упаковке Python.

Примечание

Корпоративным и другим институциональным пользователям: следует знать, что многие организации имеют собственную политику в отношении использования и участия в программном обеспечении с открытым исходным кодом. Учитывайте такую политику при использовании инструментов распространения и установки, предоставляемых с Python.

Ключевые терминыKey terms

  • pip – предпочтительная программа установки. Она по умолчанию входит в состав двоичных установщиков Python.

  • Виртуальное окружение – это полуизолированное окружение Python, которое позволяет устанавливать пакеты для использования конкретным приложением, а не в масштабе всей системы.

  • venv – стандартный инструмент для создания виртуальных окружений. По умолчанию он устанавливает pip во все создаваемые виртуальные окружения.

  • virtualenv – это сторонняя альтернатива (и предшественник) venv.

  • Индекс пакетов Python (PyPI) – это общедоступный репозиторий пакетов с открытым исходным кодом, доступных для использования другими пользователями Python.

  • Python Packaging Authority – это группа разработчиков и авторов документации, отвечающая за поддержку и развитие стандартных инструментов упаковки, а также соответствующих стандартов метаданных и форматов файлов. Они поддерживают различные инструменты, документацию и трекеры задач на GitHub.

Изменено в версии 3.5: Теперь для создания виртуальных окружений рекомендуется использовать venv.

Базовое использованиеBasic usage

Все стандартные инструменты упаковки предназначены для использования из командной строки.

Следующая команда установит последнюю версию модуля и его зависимости из PyPI:

python -m pip install SomePackage

Примечание

For POSIX users (including macOS and Linux users), the examples in this guide assume the use of a virtual environment.

Для пользователей Windows примеры в этом руководстве предполагают, что параметр изменения системной переменной среды PATH был выбран при установке Python.

Также можно указать точную или минимальную версию непосредственно в командной строке. При использовании операторов сравнения, таких как >, < или других специальных символов, интерпретируемых оболочкой, имя пакета и версию следует заключать в двойные кавычки:

python -m pip install SomePackage==1.0.4    # конкретная версия
python -m pip install "SomePackage>=1.0.4"  # минимальная версия

Обычно, если подходящий модуль уже установлен, попытка установить его снова не даст результата. Обновление существующих модулей необходимо запрашивать явно:

python -m pip install --upgrade SomePackage

Дополнительную информацию и ресурсы о pip и его возможностях можно найти в Руководстве пользователя по упаковке Python.

Создание виртуальных окружений выполняется с помощью модуля venv. Установка пакетов в активное виртуальное окружение использует команды, показанные выше.

Как …?How do I …?

Это краткие ответы или ссылки для некоторых распространённых задач.

… установить пакеты только для текущего пользователя?… install packages just for the current user?

Передача параметра --user в python -m pip install установит пакет только для текущего пользователя, а не для всех пользователей системы.

… установить научные пакеты Python?… install scientific Python packages?

Ряд научных пакетов Python имеют сложные двоичные зависимости и в настоящее время нелегко устанавливаются напрямую с помощью pip. Часто пользователям проще установить эти пакеты другими способами, чем пытаться установить их с помощью pip.

… работать с несколькими версиями Python, установленными параллельно?… work with multiple versions of Python installed in parallel?

В Linux, macOS и других POSIX-системах используйте версионированные команды Python в сочетании с ключом -m для запуска соответствующей копии pip:

python3    -m pip install SomePackage  # Python 3 по умолчанию
python3.14 -m pip install SomePackage  # конкретно Python 3.14

Также могут быть доступны соответствующим образом версионированные команды pip.

В Windows используйте py – средство запуска Python – в сочетании с ключом -m :

py -3    -m pip install SomePackage  # Python 3 по умолчанию
py -3.14 -m pip install SomePackage  # конкретно Python 3.14

Распространённые проблемы установкиCommon installation issues

Установка в системный Python в LinuxInstalling into the system Python on Linux

В Linux-системах установка Python обычно является частью дистрибутива. Установка в эту установку Python требует прав root на систему и может помешать работе системного менеджера пакетов и других компонентов системы, если какой-либо компонент будет неожиданно обновлён с помощью pip.

В таких системах зачастую лучше использовать виртуальное окружение или установку для одного пользователя при установке пакетов с помощью pip.

Pip не установленPip not installed

Возможно, pip не устанавливается по умолчанию. Одно из возможных решений:

python -m ensurepip --default-pip

Существуют также дополнительные ресурсы для установки pip.

Установка бинарных расширенийInstalling binary extensions

В прошлом Python сильно полагался на распространение в исходных кодах, и от конечных пользователей ожидалась компиляция модулей расширения из исходников как часть процесса установки.

С появлением бинарного формата wheel и возможности публиковать колеса через PyPI эта проблема уменьшается, так как пользователи всё чаще могут устанавливать готовые расширения, а не собирать их самостоятельно.

Некоторые из решений для установки научного ПО, которое ещё не доступно в виде готовых wheel-файлов, также могут помочь с получением других бинарных расширений без необходимости локальной сборки.