Зачем нужен python в linux

Обновлено: 03.07.2024

Python — интерпретируемый, интерактивный, объектно-ориентированный язык программирования. Включает модули, исключения, динамическую типизацию, высокоуровневые типы данных и классы. Поддерживает различные парадигмы программирования помимо ООП, вроде процедурного и функционального программирования. Python соединил в себе впечатляющую мощь и простоту синтаксиса. В нём предусмотрены интерфейсы для многих системных вызовов и библиотек, а также оконных систем; возможно расширение с помощью С и С++. Помимо всего перечисленного, он может использоваться как язык расширений для приложений, которым необходим программный интерфейс. Наконец, Python портируем: он запускается на множестве вариантов Unix, включая Linux и macOS, а также Windows.

Contents

Установка

Python 3

Python 3 — последняя и активно разрабатываемая версия языка. Последние изменения в Python 3 можно увидеть на странице What's New in Python.

Текущий релиз Python 3 можно установить с пакетом python .

Если вы хотите собрать самую свежую RC/бета-версию из исходников, посетите страницу Python Downloads. В пользовательском репозитории Arch также есть несколько отличных PKGBUILD'ов. Если вы решили собрать RC-версию, обратите внимание, что исполняемый файл устанавливается (по умолчанию) в каталог /usr/local/bin/python3.x . В качестве альтернативы, для которой не требуются права суперпользователя, можно выбрать установку в домашний каталог с помощью pyenv .

Python 2

Важно: Жизненный цикл Python 2 закончился 1-го января 2020 года. Некоторое количество пакетов всё ещё зависит от Python 2, но эта версия Python больше поддерживаться не будет. См. Sunsetting Python 2.

Python 2 — более старая версия языка. Python 3 и Python 2 несовместимы. Обзор различий можно найти в статье Python2orPython3.

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

Последнюю версию Python 2 можно установить с пакетом python2 .

Python 2 будет успешно запускаться и функционировать, даже если в вашей системе также установлен Python 3. Эта версия запускается командой python2 .

Любая программа, которой необходим Python 2, должна вызывать команду /usr/bin/python2 вместо /usr/bin/python , которая указывает на Python 3. Чтобы добиться этого, откройте программу или сценарий в текстовом редакторе и измените первую строку, которая может выглядеть как

В обоих случаях замените python на python2 , и программа будет использовать Python 2.

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

Итак, для начала создайте необходимый каталог:

Затем создайте символическую ссылку python , указывающую на python2, и ещё одну для сценариев настройки:

Наконец, добавьте вновь созданный каталог в начало переменной PATH :

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

Чтобы узнать, какая версия интерпретатора Python будет использоваться, выполните:

Альтернативные реализации

Пакет python содержит CPython, стандартную реализацию Python, но существуют и другие реализации. Они обычно основаны на более старых версиях Python и лишь частично совместимы с CPython.

Доступные в Arch Linux реализации:

Существуют и другие реализации. Некоторые из них, вроде Stackless, Pyston и Cinder, используются внутри больших технологических компаний. Другие имели некоторое значение в прошлом, но больше не поддерживаются из-за улучшений более популярных реализаций.

Альтернативные оболочки

Пакет python включает интерактивную оболочку/REPL Python, которая запускается командой python . Доступны также следующие оболочки:

Старые версии

Важно: Версии Python до 3.5 включительно не поддерживаются. Использование этих версий для работы веб-приложений или запуска недоверенного кода опасно и не рекомендуется.

Старые версии Python доступны в AUR и могут быть полезны, если вас одолевает историческое любопытство, если старые приложения не запускаются на более новых версиях или если вам необходимо протестировать программы на возможность работы в дистрибутивах со старыми версиями интерпретатора:

Дополнительные модули/библиотеки для старых версий Python можно найти в AUR по слову python<версия_без_точки> . Например, введите python26 для поиска модулей версии 2.6.

Управление пакетами

Существует целый ряд способов установить пакет Python в Arch Linux:

При установке пакетов из источников, отличных от официальных репозиториев и AUR, рекомендуется использовать виртуальное окружение (или управление окружением Conda), чтобы предотвратить конфликты с системными пакетами в каталоге /usr . В качестве альтернативы можно устанавливать пакеты командой pip install --user , которая устанавливает пакеты для пользователя, а не в системный каталог /usr .

См. Python Packaging User Guide на предмет лучших практик по управлению пакетами.

Исторически easy_install (часть python-setuptools ) использовалась для установки пакетов, распространяемых как Eggs. easy_install и Eggs были заменены на pip и Wheels. Подробнее см. pip vs easy_install и Wheel vs Egg.

Совет: pipenv предоставляет отдельный интерфейс командной строки для Pipfile, pip и virtualenv. Он доступен в пакете python-pipenv .

Привязки к графическим библиотекам

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

Советы и рекомендации

Виртуальное окружение

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

Автодополнение в оболочке Python

Автодополнение по клавише Tab включено в интерактивной оболочке по умолчанию. Учтите, что дополнение readline работает только для строк в глобальном пространстве имён. Пакет python-jedi расширяет возможности автодополнения [1].

Как установить Python на Linux

В последнее время, среди нового поколения разработчиков программного обеспечения большую популярность набирает язык программирования Python (Питон). На примере Python, мы видим высокоуровневый язык, который не нуждается в компиляторе и применяется для написания самого разного вида софта (мобильные приложения, веб-разработка, СПО под Линукс, системы искусственного интеллекта и machine learning, Data Science и др.). Надо отметить, что профессия программиста на Python сейчас достаточно популярна и востребована среди молодежи, ей обучают на многочисленных курсах, да и предложения по зарплате очень даже неплохие.

Так как программы, разработанные на Python, не компилируются, то роль интерпретатора байт-кода играет CPython. Исходный код программ, написанных на питоне, хранится в файлах с расширением .py.

В ОС Linux язык Python играет важную роль, он используется для системного администрирования, и именно на нем написаны такие известные программы, как GIMP, Blender и др. В Линукс интерпретатор питон уже установлен «по умолчанию», но как правило, разработчику необходима или наиболее свежая версия или же несколько версий Python сразу. На сегодня, последняя стабильная версия языка Python — это 3.9.2, скачать ее можно на официальном сайте проекта.

В этой статье мы расскажем все тонкости установки Python для Linux, на примере Ubuntu 20, Debian 10, а также CentOS 7/8.

Подготовка к установке Python под Ubuntu 20 (Debian 10)

Как мы уже писали ранее, Python должен быть установлен «по умолчанию» в стандартном пакете сборки Ubuntu 20.04. Перед выполнением инсталляционных работ, наша задача — проверить какая версия питон у нас уже установлена в системе. Сделать это можно с помощью следующей команды:

Версия Python в ОС Ubuntu 20

В нашей ОС Ubuntu 20 уже есть версия Python 3.8.5. Существует еще одна полезная команда, с помощью которой можно узнать, какие вообще версии Python установлены в нашей ОС Линукс, см. ниже на скриншоте:

Все версии Python, установленные в Ubuntu 20 по умолчанию.

Сейчас мы покажем, как установить Python на Ubuntu двумя популярными способами:

  1. с помощью apt (используя deadsnakes PPA);
  2. из исходников, скачанных с официального сайта.

Все команды следует выполнять или под пользователем root, или используя sudo.

Установка новой версии Python из deadsnakes PPA

Первоначально, введем команды для обновления списка пакетов и установки необходимых нам для дальнейшей работы библиотек:

Установка необходимых нам для дальнейшей работы библиотек

Затем необходимо включить deadsnakes PPA (Personal Package Archive), для этого выполним следующую команду:

Включение deadsnakes PPA

После этого действия, еще раз выполним команду:

Сейчас установим версию Python 3.9:

Установка Python 3.9

На следующем этапе, мы опять проверим список установленных в системе версий Python и видим, что добавилась версия 3.9:

Все версии Python (включая 3.9), установленные в Ubuntu 20.

Сборка Python 3.9.2 в Linux из исходников

Этот способ может показаться немного сложнее предыдущего, но зато с помощью него можно установить самую свежую версию Python, которая доступна на официальном сайте. Процесс установки опробован на ОС Ubuntu 20, также его можно применять и на Debian 10.

FTP сервер официального сайта проекта Python

Перед началом процесса работ по установке выполним команды для обновления системы:

На следующем шаге, необходимо инсталлировать необходимые нам для работы пакеты:

Инсталляция необходимых для сборки Python пакетов

Затем перейдем в папку /tmp и скачаем в нее архив с официального сайта Python*:

*Примечание: можно использовать как команду wget, так и команду curl.

Скачиваем архив с официального сайта Python командой wget

Cейчас распакуем этот архив во временную папку и затем его сразу же и удалим:

На следующем этапе, запустим команду, которая выполнит подготовку к установке (enable-optimization — служит для оптимизации двоичного файла Python). Исполнение данной команды займет некоторое время:

Подготовка к установке Python 3.9.2

Для того, чтобы начать процесс сборки, выполним команду*:

*Примечание: цифра 2 указывает на количество ядер процессора. Узнать эти данные можно с помощью команды nproc.

Выполнение команды make -j

Если в процессе сборки будут замечены проблемы, то необходимо запустить сборку в однопоточном режиме, следующим образом (без параметров -j 2), просто выполнив команду make.

Теперь установим Python 3.9.2 с помощью команды altinstall, последняя версия Python инсталлируется наряду со старыми версиями, т.е. у вас в ОС будет несколько версий языка Python. Если же вы используете команду install, то новая версия питон будет установлена поверх старых (а все старые версии будут удалены).

*Процесс инсталляции Python путем сборки пакета из исходников может занять длительное время.

В результате, в нашей ОС Ubuntu 20 (Debian 10) будет установлено сразу несколько версий языка Python, у нас конкретно — это версии 3.9.2 и 3.8.5, проверить можно с помощью команд:

Установлено несколько версий Python в ОС Линукс

Особенности установки Python на CentOS

Для инсталляции Python на CentOS версии 7 необходимо использовать репозиторий epel (Extra Packages for Enterprise Linux) или же DNF (Dandified YUM, т.е. yum нового поколения) для CentOS 8.

Для способа с использованием DNF выполним следующие команды:

  1. Проверим обновления нашего диспетчера пакетов:
  2. Установим стабильную версию Python 3 из репозитория:
  3. Проверим, какая точно версия Python у нас инсталлировалась:
  4. Чтобы установить инструментарий для разработчиков, выполним следующую команду:

Если же вы будете использовать репозиторий epel, то следуйте простым инструкциям:

  1. Подключите репозиторий epel для начала работы:
  2. Затем установите Python (например, версии 3.6):
  3. Для проверки номера версии введите команду:
  4. Для отображения последней установленной в вашей ОС версии используйте команду:

Как создать и настроить виртуальную среду

Для чего нужна виртуальная среда? С помощью виртуальной среды мы можем для каждого своего проекта на языке Python выделить отдельную область (со своими зависимостями, с установленными модулями питон, разными версиями языка и т.д.).

Работа с пакетом virtualenv

Например, у нас есть Project A и Project B, для каждого из них мы можем создать свою виртуальную среду, сделать это можно с помощью venv, выполнив несложные команды:

  1. Создаем каталог для нового проекта my_project и переходим в него:
  2. Выполним команду, чтобы создать виртуальную среду:
  3. На данном этапе необходимо ее активировать:

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

Создание виртуальной среды

Работа с виртуальной средой с помощью virtualenvwrapper и pip

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

    Для начала устанавливаем менеджер пакетов pip:

Устанавливаем менеджер пакетов pip

Установка virtualenv и virtualenvwrapper

Добавим в конец файла следующие строки:

Сохраним изменения и закроем файл.

А) Для создания новой виртуальной среды (например, ansible) используется команда:

Б) Для удаления виртуальной среды:

В) Чтобы активировать нужную вам виртуальную среду:

Г) Для выхода из среды:

Д) Показать список установленных пакетов:

Выполнение команды pip3 list

Е) Для инсталляции конкретных пакетов:

Заключение

В этой статье мы рассказали нашим читателям об использовании языка программирования Python и подробно изложили два способа установки последней версии Python для ОС Linux (на Ubuntu 20, Debian 10, CentOS 7 и 8). Также дали основные понятия о работе с виртуальной средой.

Логотип Python

Python активно развивается, уже несколько лет оставаясь одним из наиболее популярных языков программирования. И продолжает укреплять свои позиции: по данным StackOverflow за 2019 год, Python занимал четвёртое место в списке наиболее востребованных ЯП. А в этом году, согласно отчёту RedMonk, он стал вторым, опередив даже Java. Так что стоит узнать, где используется язык Python, каков порог вхождения в отрасль и какие компании хантят Python-разработчиков.

В чём особенности языка программирования Python

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

Одно из достоинств Python — его логичность и относительная простота. Он интерпретируемый, то есть исходники не нужно компилировать. Разработка на Python идёт быстрее, чем на многих других языках. И он отлично подходит для новичков: писать простые программы можно уже через несколько дней после начала обучения.

Сложно ли научиться программировать на «питоне»

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

Вот пример программы на разных языках программирования, которая выводит на экран фразу «Hello World».

Java:

C++:

Python:

В последнем случае код максимально простой, его сразу поймёт даже человек без технического бэкграунда. Конечно, не все программы выглядят настолько просто — более сложные проекты состоят из сотен и тысяч строк кода. Но «питон» — более простой для понимания язык программирования, чем многие другие.

Где используется Python

Чаще всего Python используется в веб-разработке и анализе больших данных. Чтобы дополнить функциональность языка, используются разные фреймворки: Django, Pyramid, Flask и другие.

Но Python подходит и для создания прикладных приложений или игр. Например, графический редактор GIMP написан именно на Python. Торрент-клиент BitTorrent вплоть до 6 версии тоже разработан на этом языке. Python применялся и в ходе разработки игровых проектов класса ААА: EVE Online, Battlefield 2, World of Tanks и других.

Чаще всего в таких случаях на Python пишут один из компонентов проекта. То есть не всю игру или приложение, а какой-то модуль, например серверную часть.

А ещё язык Python используется в системном администрировании, для автоматизации задач. Он задействован практически во всех серверах с ОС Linux.

«Питон» очень хорош и для работы с данными в научных исследованиях — в набирающей обороты Data Science. На этом языке пишут алгоритмы машинного обучения и анализа данных.

Как видим, Python используется повсеместно — с ним дружат мобильные и десктопные приложения, игры, наука, ИИ-отрасль. Проще перечислить, где Python ещё не пригодился. Такая пластичность очень способствует его популярности.

Программисты на разных языках, мем

Python в крупных компаниях

Неудивительно, что при такой универсальности Python применяют многие крупные IT-компании.

В Amazon и Spotify используют Python для анализа пользовательских данных, информации о продажах и разработки персонализированных рекомендаций.

В Walt Disney применяют этот язык в качестве скриптового для анимации.

YouTube и Instagram… Эти проекты полностью написаны на Python. Кроме того, холдинг Alphabet использует «питон» для скрейпинга в Google — извлечения данных со страниц веб-ресурсов.

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

Autodesk в своём редакторе 3D-анимации Maya с помощью Python создаёт мультипликацию. Так же язык использует студия Pixar.

JPMorgan Chase, крупный американский финансовый холдинг, применяет Python для прогнозирования рынка.

NASA работает с проектами на этом языке программирования, чтобы проводить научные вычисления.

Сколько зарабатывают разработчики на Python

По данным блога «Хабр.Карьеры», медианная зарплата Python-разработчика во втором полугодии 2019 года — 115 тысяч рублей. А теперь оценим по уровню специалиста:

  • джуниор получает в среднем 54 тысячи рублей;
  • мидл — около 100 тысяч;
  • сеньор — примерно 160 тысяч. Фактически встречаются разработчики и с окладом 300 тысяч;
  • тимлид — в районе 195 тысяч.

Как видите, зарплата по мере роста квалификации увеличивается почти в четыре раза.

Зарплата разработчиков на Python

Data Science, машинное обучение и искусственный интеллект развиваются очень активно. Неотъемлемая часть этих отраслей — как раз Python и специалисты, владеющие им. К слову, коронакризис слабо затронул это направление, волатильность здесь небольшая.

Для первого знакомства с Python мы проводим бесплатный интенсив. А освоить язык до уровня middle-специалиста поможет факультет Python-разработки GeekBrains. По итогам обучения вы откроете для себя все сферы, где применяют Python: научитесь создавать клиент-серверные, прототипировать мобильные приложения, понимать алгоритмы и основы структур данных, проектировать архитектуру программных проектов, работать с Git. А также получите массу других навыков и умений, необходимых для успешной работы программистом.

Освоить востребованную профессию в Data Science можно всего за полтора года на курсах GeekBrains. После учёбы вы сможете работать по специальностям Data Scientist, Data Analyst, Machine Learning, Engineer Computer Vision-специалист или NLP-специалист.

Но насколько верно это утверждение?

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

Кому стоит изучать Python?

Но в то же время, многие изучают его как второй язык программирования

Однако, если нужно написать что-то быстро и без лишних заморочек, то я использую Python.

Например:

  • Яндекс
  • Google
  • Dropbox
  • Facebook
  • Instagram
  • И так далее

Как видите, крупнейшие IT-компании используют Python. А там точно не новички работают =)

Кстати говоря, если не знакомы с Linux, то рекомендую посмотреть мои видео по установке и настройке этой операционной системы для новичков.

Python прекрасно подходит для веб-разработки

Думаю, что многие слышали про фреймворк Джанго, на котором сделано множество сайтов.

Также можно использовать фреймворк Flask для создания сайтов.

В то же время, если хотите писать программы для Linux, то разумнее будет посмотреть в сторону Python. Да, сейчас компания Microsoft прикладывает усилия к заходу на платформу Linux, но до идеального результата пока еще далеко.

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

Вместо итога:

Python однозначно подходит для изучения как первого языка программирования. После его изучения процесс изучения других языков программирования пойдет гораздо быстрее.

Изучая его, вы быстро освоите базовые концепции программирования, так как он действительно простой и, повторюсь, интуитивно понятный.

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

И после Python гораздо проще изучать другие языки программирования. А затем второй, третий и так без остановки =)

Читайте также: