Программирование  •  02 сентября 2022  •  5 мин чтения

Как установить Python и начать на нём писать

Разбираем, какую версию Python выбрать, как стартовать, какие есть альтернативные реализации языка и зачем они нужны.

Какой Python выбрать

Язык программирования Python используют:

● системные администраторы, DevOps- и SRE-инженеры для автоматизации рутинных задач;
● QA-специалисты для покрытия кода тестами;
специалисты по Data Science и машинному обучению для обработки больших данных и обучения моделей;
● бэкенд-инженеры для написания MVP, продуктовых сервисов и приложений.

Большинство электронных устройств с ОС — телевизоры, телефоны, смарт-часы, системы «умный дом», роутеры и коммутаторы — по умолчанию содержат файлы для установки интерпретатора Python. Такие файлы называются дистрибутивами.

Выбор версии зависит от целей и задач:

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

Вторая версия остаётся доступной для установки, потому что на ней много легаси (от англ. legacy — «наследие») — старого кода, на котором работают продуктовые решения или отдельные приложения. Чтобы переписать такой код, нужно много ресурсов, но на это нецелесообразно тратить время и силы разработчиков.

Python 2 используют на устройствах, которые невозможно усовершенствовать или обновить, например роутерах и компьютерах со старыми версиями ОС. Операционные системы таких устройств несовместимы с Python 3.

Раньше новые функции версии 3 переносили в версию 2, но с 2021 года версия 2.7 официально не поддерживается. При этом продукты многих компаний до сих пор работают на Python 2. Например, старые версии таких программ, как Blender и GIMP.

Новичкам, которые только планируют освоить Python, лучше сразу устанавливать Python 3. В новой версии есть все старые функции. Посмотреть актуальные версии и релизы можно на официальной странице.

На курсе «Python-разработчик» студенты с первого урока начинают писать на Python и учатся решать задачи бэкенд-разработчика.

Что нужно установить

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

Для Windows скачивается установочный файл в формате *.exe, для macOS и Linux — deb-пакет.

Также Python можно запустить через Docker — систему контейнеризации. Для запуска в Windows нужно дополнительно установить сам Docker. Для этого перейти на сайт — https://docs.docker.com/desktop/install/windows-install/, скачать дистрибутив и запустить установку.

Установка Docker для Windows с официальной страницы
Установка Docker для Windows с официальной страницы
На последних версиях операционных систем macOS и Linux Docker предустановлен.
Материал по теме:
8 самых популярных языков программирования для работы с Big Data

Установка интерпретатора Python

Чтобы правильно установить Python, потребуется пара минут и минимум усилий. Но в зависимости от системы есть несколько вариантов действий.
На Windows
Для установки интерпретатора Python на Windows запускается скачанный *exe-файл и парой кликов подтверждается запуск.
На Linux

Установить Python на Linux можно с помощью менеджера пакетов. Для этого нужно ввести в окне консоли команду:

apt-get install python[version]

Важный момент: это установка системного пакета, поэтому её нужно запускать с правами администратора — то есть к команде установки добавить команду sudo.

Запуск установки Python на Linux
Запуск установки Python на Linux
На macOS

Установить Python на Mac тоже можно через операционный менеджер пакетов. В этом случае процесс запустит команда:

brew install python[version]

В Docker

Для запуска нужно только скачать образ с нужной версией интерпретатора и стартовать его. Так как Docker — это система виртуализации, то образ будет одинаково работать на любой операционной системе.

Чтобы скачать образ, в окне консоли нужно ввести команду:

docker run python:[version]

Например:

docker run python:3.10-slim

Стартовать последнюю версию можно командой:

docker run python:latest

Все поддерживаемые версии можно посмотреть на сайте — https://hub.docker.com/_/python.

Или же написать образ самому, используя Dockerfile.

Как начать использовать Python

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

Все распространённые методы работы с Python доступны для Windows, macOS и Linux. Рассмотрим пять популярных способов работы с Python:

1. Через интерактивную оболочку

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

python[version]

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

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

В окне консоли можно ввести команду:

python -c

Далее нужно указать весь код, например:

python -c “print (‘Hello’)”

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

python -c “import sys; print (sys.version)”

Выполнение команды в окне консоли
Выполнение команды в окне консоли
Но такой способ не подходит для работы над большим проектом, в котором много кода. Код в текстовом формате в рамках консоли нельзя структурировать, разбить на классы, функции и модули.
3. Через файлы с кодом
Для этого способа нужно создать файл с расширением *.py, чтобы система и интерпретатор смогли распознать его. Далее в файле пишется нужный код.
Файл main.py и его содержимое
Файл main.py и его содержимое

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

python

Вторым параметром указывается название файла. Например, для файла с названием main.py команда будет выглядеть так:

python main.py

Выполнение кода из файла в консоли
4. Через интегрированную среду разработки (IDE)
Для этого нужно дополнительно скачать и установить IDE.

Рассмотрим, как это выглядит, на примере IDE PyCharm.

Левая консоль в PyCharm — это дерево файлов. Здесь можно создавать папки и таким образом структурировать весь проект.

Алгоритм создания файла Python в PyCharm
В созданных файлах пишется нужный код. При этом редактор визуально подсвечивает синтаксис для удобства.

При запуске файла в нижнем окне открывается терминал, в котором код автоматически запускается.

Запуск кода в PyCharm
Преимущества работы в IDE в том, что сам код можно разбивать по классам, файлам, модулям, подключаться к удалённым серверам и делать многое другое.
5. Через интерактивный блокнот Jupyter

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

Чтобы запустить интерактивный блокнот Jupyter, нужно ввести команду jupyter notebook
В Jupyter создаются блоки с кодом, которые можно выполнять в интерактивном режиме: запускать, переключаться между ними, просматривать предыдущие статусы запуска и вывод.

Запущенный ранее блок кода сохраняет статус выполнения и вывод в специальном формате — *.ipynb.

Выполнение блоков кода в Jupyter и сохранённый файл в формате *.ipynb

Часто в Jupyter импортируют дополнительные библиотеки. Для работы с матрицами и различными данными используют NumPy и pandas, а для визуализации данных в виде графиков и диаграмм — Matplotlib.

Визуализация результата с помощью Matplotlib в Jupyter

Альтернативы CPython и зачем они нужны

У CPython есть только одна серьёзная проблема — наличие GIL. Это механизм глобальной блокировки интерпретатора, который защищает доступ к памяти и объектам Python при параллельном взаимодействии.

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

Из-за этой проблемы появились альтернативные интерпретаторы на других языках, например Jython на Java. Полный список можно найти на официальной странице Python.

Альтернативы CPython без GIL

В альтернативных версиях нет GIL, но управление памятью, в том числе и сборка мусора, реализовано по принципам других языков программирования со всеми их недостатками. Например, в Jython работает сборщик мусора JVM, который утилизирует объекты и занимаемую ими память с задержками.

Проблема с GIL была до версии Python 3.4. Потом её решили на уровне самого языка, добавив два метода: async и await. С помощью этих команд большую задачу можно разделить на подзадачи, которые называются «корутины» или «сопрограммы». Корутины могут выполняться параллельно и асинхронно и при этом не быть связанными друг с другом. Результат их работы можно объединить в конце выполнения и использовать для дальнейших вычислений.

На новых версиях Python для решения проблемы с GIL не нужно переключаться на альтернативные. После обновления появились различные асинхронные фреймворки, например Sanic, Starlette и FastAPI.

Совет эксперта

Николай Федосеев

«Python — лёгкий в освоении язык программирования. Дзен и философия языка подсказывают, как писать простой и понятный код. Python используется во всех IT-сферах: администрировании, тестировании, машинном обучении, разработке приложений.

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

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

Статью подготовили:

Яндекс Практикум
Ментор Python,
SDE @ PlayCanvas
Яндекс Практикум
Редактор

Дайджест блога: ежемесячная подборка лучших статей от редакции

Поделиться
Идеи новогодних подарков от нейросети + промокоды на курсы Практикума и акции от партнеров
Thu Dec 05 2024 13:32:46 GMT+0300 (Moscow Standard Time)