Установка модулей Python
- Электронная почта:
Python — популярный проект с открытым исходным кодом, у которого есть активное сообщество разработчиков и пользователей, также предоставляющих своё программное обеспечение другим разработчикам Python для использования на условиях лицензий с открытым исходным кодом.
Это позволяет пользователям Python эффективно делиться решениями и сотрудничать, используя решения, уже созданные другими для распространённых (а иногда даже редких!) проблем, а также, при желании, внося собственные решения в общую базу.
Это руководство посвящено этапу установки. Руководство по созданию и распространению собственных проектов Python см. в руководстве пользователя по упаковке Python.
Примечание
Корпоративным и другим институциональным пользователям следует учитывать, что во многих организациях действуют собственные правила использования программного обеспечения с открытым исходным кодом и участия в его разработке. Учитывайте эти правила при использовании средств распространения и установки, поставляемых вместе с Python.
Основные термины
-
pip— рекомендуемая программа установки. Начиная с Python 3.4, она включена по умолчанию в установщики Python с бинарными файлами. - Виртуальное окружение — это частично изолированное окружение Python, позволяющее устанавливать пакеты для использования конкретным приложением, а не для всей системы.
-
venv— стандартный инструмент для создания виртуальных окружений, входящий в состав Python начиная с версии 3.3. Начиная с Python 3.4, он по умолчанию устанавливаетpipво все создаваемые виртуальные окружения. -
virtualenv— сторонняя альтернатива (и предшественник)venv. Она позволяет использовать виртуальные окружения в версиях Python до 3.4, в которых либо вообще отсутствуетvenv, либо невозможно автоматически установитьpipв создаваемые окружения. - Индекс пакетов Python — это общедоступный репозиторий пакетов с открытыми лицензиями, предназначенных для использования другими пользователями Python.
- Управление упаковкой Python — это группа разработчиков и авторов документации, отвечающая за сопровождение и развитие стандартных инструментов упаковки, а также связанных с ними стандартов метаданных и форматов файлов. Группа поддерживает различные инструменты, документацию и системы отслеживания ошибок на GitHub.
-
distutils— исходная система сборки и распространения, впервые добавленная в стандартную библиотеку Python в 1998 году. Хотя прямое использованиеdistutilsпостепенно прекращается, эта система заложила основу современной инфраструктуры упаковки и распространения. Она не только остаётся частью стандартной библиотеки, но и её название продолжает использоваться в других контекстах (например, в названии списка рассылки, предназначенного для координации разработки стандартов упаковки Python).
Изменено в версии 3.5: Теперь для создания виртуальных окружений рекомендуется использовать venv.
Основы использования
Все стандартные инструменты упаковки предназначены для использования из командной строки.
Следующая команда установит последнюю версию модуля и его зависимости из индекса пакетов Python:
python -m pip install SomePackage
Примечание
В примерах этого руководства для пользователей POSIX (включая пользователей macOS и Linux) предполагается использование виртуального окружения.
В примерах этого руководства для пользователей Windows предполагается, что при установке Python был выбран параметр изменения системной переменной среды PATH.
Можно также указать точную или минимальную версию непосредственно в командной строке. Если используются операторы сравнения, такие как >, <, или другие специальные символы, которые интерпретируются командной оболочкой, имя пакета и номер версии следует заключить в двойные кавычки:
python -m pip install SomePackage==1.0.4 # specific version python -m pip install "SomePackage>=1.0.4" # minimum version
Как правило, если подходящий модуль уже установлен, повторная попытка его установки не даст результата. Обновление существующих модулей необходимо запрашивать явно:
python -m pip install --upgrade SomePackage
Дополнительные сведения и материалы о pip и его возможностях можно найти в руководстве пользователя по упаковке Python.
Виртуальные окружения создаются с помощью модуля venv. Для установки пакетов в активное виртуальное окружение используются приведённые выше команды.
Как …?
Здесь приведены краткие ответы или ссылки на решения распространённых задач.
… установить pip в версиях Python до Python 3.4?
Python начал включать pip в комплект поставки только с версии Python 3.4. Для более ранних версий pip необходимо «начально загрузить», как описано в руководстве пользователя по упаковке Python.
… установить пакеты только для текущего пользователя?
Передача параметра --user команде python -m pip install позволит установить пакет только для текущего пользователя, а не для всех пользователей системы.
… установить научные пакеты Python?
У ряда научных пакетов Python сложные бинарные зависимости, поэтому в настоящее время их непросто установить непосредственно с помощью pip. Сейчас пользователям зачастую проще установить такие пакеты другими способами, чем пытаться устанавливать их с помощью pip.
… работать с несколькими версиями Python, установленными параллельно?
В Linux, macOS и других POSIX-системах используйте версионированные команды Python вместе с параметром -m, чтобы запустить соответствующую копию pip:
python2 -m pip install SomePackage # default Python 2 python2.7 -m pip install SomePackage # specifically Python 2.7 python3 -m pip install SomePackage # default Python 3 python3.4 -m pip install SomePackage # specifically Python 3.4
Также могут быть доступны соответствующие версионированные команды pip.
В Windows используйте средство запуска Python py вместе с параметром -m:
py -2 -m pip install SomePackage # default Python 2 py -2.7 -m pip install SomePackage # specifically Python 2.7 py -3 -m pip install SomePackage # default Python 3 py -3.4 -m pip install SomePackage # specifically Python 3.4
Распространённые проблемы при установке
Установка в системный Python в Linux
В системах Linux Python обычно устанавливается в составе дистрибутива. Для установки в эту версию Python требуются права root. Если компонент неожиданно обновится с помощью pip, это может помешать работе системного менеджера пакетов и других компонентов системы.
В таких системах при установке пакетов с помощью pip зачастую лучше использовать виртуальное окружение или устанавливать пакеты для отдельного пользователя.
Pip не установлен
Возможно, pip не установлен по умолчанию. Один из возможных способов решения проблемы:
python -m ensurepip --default-pip
Дополнительные сведения об установке pip также доступны.
Установка бинарных расширений
Python традиционно в значительной степени полагался на распространение исходного кода, предполагая, что конечные пользователи будут компилировать модули расширения из исходного кода в процессе установки.
С появлением поддержки бинарного формата wheel и возможности публиковать wheel-пакеты как минимум для Windows и macOS через индекс пакетов Python ожидается, что со временем эта проблема станет менее актуальной: пользователи смогут чаще устанавливать готовые расширения, не собирая их самостоятельно.
Некоторые способы установки научного программного обеспечения, которое пока недоступно в виде готовых файлов wheel, также могут помочь получить другие бинарные расширения без необходимости собирать их локально.
© 2001–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.12/installing/index.html