Установка сторонних модулей (pip install). Пакетная установка

Курс по Python: https://stepik.org/course/100707

На этом занятии мы познакомимся со способами установки сторонних (внешних) модулей для текущего интерпретатора Питона.

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

  • NumPy  - работа с многомерными массивами;
  • Matplotlib – отображение графиков.

Если мы собираемся работать с графикой, то, обычно, используют модуль:

  • Pygame – реализация простой 2D-графики.

Если разрабатываем бэкэнд сайта, то нам потребуется фремворк, например:

  • Flask – простой фреймворк (часто для информационных сайтов);
  • Django – продвинутый фреймворк для самых сложных сайтов.

И так далее. Сторонние модули разрабатываются и обновляются постоянно. Для языка Python за долгие годы были разработаны сотни тысяч пакетов для самых разных нужд. В этом также одно из преимуществ данного языка – его удобно применять для решения самых разных задач.

Чтобы увидеть, какие пакеты уже установлены для текущего интерпретатора языка Python, нужно открыть командное окно или вкладку «Terminal» в PyCharm, набрать команду:

pip list

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

pip install <название пакета>

Но как нам узнать, какие пакеты существуют, как они называются и как их применять в программе? Для этого существует специальный сайт (репозиторий) со списком сторонних пакетов и их кратким описанием:

https://pypi.org

Конечно, отображать названия обычным списком просто нереально. Здесь, как в поисковой системе, нужно набрать примерное название и выполнить поиск. Например, найдем пакет flask:

В результате, получим множество пакетов, где это имя фигурирует. В самом начале, как правило, появляются наиболее релевантные результаты. И, действительно, здесь первой строчкой, как раз и стоит пакет Flask – микрофреймворк для разработки простых сайтов. Щелкнем по нему и увидим краткое описание, ссылку на подробную документацию и команду для установки этого пакета:

pip install Flask

Если прописать ее в таком виде, то будет найдена последняя версия и установлена на компьютер. При необходимости, можно явно указать версию для установки. Для этого после имени пакета ставится два равно и пишется номер версии:

pip install Flask==1.1.2

Другой способ установки пакетов – через PyCharm. Для этого нужно выбрать Settings->ProjectInterpreter. Увидим окно с текущим интерпретатором языка Python и набором внешних установленных пакетов, а также их версий. Чтобы добавить новый пакет, выбираем «+» и в открывшемся окне через поиск находим нужный пакет и нажимаем кнопку «Install Package».

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

Также вас может интересовать, а где располагаются эти установленные модули? Узнать это очень просто. Наведем курсор мыши на название любого пакета и увидим путь его расположения. Этот путь также присутствует в специальной коллекции:

sys.path

о которой мы с вами говорили на прошлом уроке. Поэтому, все установленные внешние пакеты могут быть импортированы в программу без дополнительных указаний каталогов и подкаталогов.

Наконец, последнее, о чем я хочу рассказать вам на этом занятии – это пакетная установка внешних модулей. Делается это с помощью команды:

pip install -r <текстовый файл>

А в текстовом файле нужно прописать имена устанавливаемых модулей, обычно, с указанием требуемых версий, но можно и без них (тогда будет установлена последняя версия пакета).

Этот файл можно сформировать вручную, но часто такая пакетная установка используется для переноса проекта с одного компьютера на другой. Поэтому, в файле нужно прописать все установленные внешние пакеты. Чтобы не делать этого вручную, можно выполнить команду:

pip freeze > requirements.txt

и в рабочем каталоге проекта появится текстовый файл requirements.txt с набором всех установленных модулей для текущего интерпретатора. Далее, мы можем указать этот файл в команде:

pip install -r requirements.txt

и эти пакеты будут установлены при их отсутствии.

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

Курс по Python: https://stepik.org/course/100707

Видео по теме