Установка модулей Python
В качестве популярного проекта с открытым исходным кодом Python располагает активным сообществом разработчиков и пользователей, которые также предоставляют свои программные продукты другим разработчикам Python под лицензиями с открытым исходным кодом.
Это позволяет пользователям Python эффективно обмениваться опытом и сотрудничать, получая выгоду от решений, которые другие уже создали для распространённых (и иногда даже редких!) проблем, а также потенциально внося свой вклад в общий пул решений.
Это руководство охватывает часть процесса установки. Для получения руководства по созданию и совместному использованию собственных проектов Python обратитесь к руководству по пакетированию Python.
Примечание
Для корпоративных и других институциональных пользователей учтите, что многие организации имеют свои собственные правила использования и внесения вклада в программное обеспечение с открытым исходным кодом. Учтите эти правила при использовании инструментов распространения и установки, предоставляемых с Python.
Основные термины
-
pip— предпочтительная программа установки. Начиная с Python 3.4, она включена по умолчанию в установочные файлы Python. - Виртуальная среда — это полуизолированная среда Python, которая позволяет устанавливать пакеты для использования конкретным приложением, а не во всей системе.
-
venv— стандартный инструмент для создания виртуальных сред, являющийся частью Python с Python 3.3. Начиная с Python 3.4, по умолчанию он устанавливаетpipво все созданные виртуальные среды. -
virtualenv— альтернативный (и предшествующий) инструмент стороннего разработчика дляvenv. Он позволяет использовать виртуальные среды в версиях Python до 3.4, которые либо не предоставляютvenvвовсе, либо не могут автоматически установитьpipв созданные среды. - Python Package Index — общедоступный репозиторий пакетов с открытым исходным кодом, предоставляемых для использования другими пользователями Python.
- Python Packaging Authority — группа разработчиков и авторов документации, ответственная за поддержку и развитие стандартных инструментов пакетирования и связанных с ними стандартов метаданных и форматов файлов. Они поддерживают различные инструменты, документацию и системы отслеживания задач как на GitHub, так и на Bitbucket.
-
distutils— оригинальная система сборки и распространения, впервые добавленная в стандартную библиотеку Python в 1998 году. Хотя прямое использованиеdistutilsпостепенно отменяется, она заложила основу для современной инфраструктуры пакетирования и распространения, и она не только остаётся частью стандартной библиотеки, но и сохраняет своё имя в других формах (например, в названии списка рассылок, используемого для координации разработки стандартов пакетирования Python).
Изменено в версии 3.5: Для создания виртуальных сред теперь рекомендуется использовать venv.
Базовое использование
Стандартные инструменты пакетирования предназначены для использования из командной строки.
Следующая команда установит последнюю версию модуля и его зависимости из Python Package Index:
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 и возможности публикации колес для, по крайней мере, Windows и macOS через Python Package Index, эта проблема должна уменьшаться со временем, так как пользователи всё чаще смогут устанавливать готовые расширения, а не нуждаться в их сборке самостоятельно.
Некоторые из решений для установки научного программного обеспечения, которые ещё не доступны в виде готовых файлов wheel, могут также помочь в получении других бинарных расширений без необходимости локального компилирования.
© 2001–2023 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.11/installing/index.html