Python (или «Питон») – язык общего назначения. Он пользуется огромным спросом среди современных разработчиков. Широко применяется в самых разных областях IT.

Python был создан в качестве средства для упрощения и ускорения обучения/работы программистов в конце 80-х– начале 90-х годов Гвидо ван Россумом. Создатель заложил в основу Python язык ABC, за счет чего Питон легко учился. Со временем ЯП стал широко известен и получил в свое распоряжение множество библиотек, фреймворков и иных инструментов. 

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

Далее предстоит выяснить, как писать программы на Python. Работы, представленные в статье, – это примеры написания готовых кодов. Образцы, опираясь на которые, пользователи смогут лучше освоить разработку программного обеспечения при помощи Питона. Необходимо не только изучить области применения языка и его наглядные примеры, но и получить базовые навыки в программировании.

Области применения

Python – язык, который встречается в самых разных областях разработки. Чаще всего он встречается в:

  • веб-программировании: для формирования веб-приложений и сайтов через фреймворки (Flask, Django);
  • анализе данных;
  • научных исследованиях для обработки и визуализации данных, организации сложных расчетов;
  • искусственном интеллекте и машинном обучении;
  • автоматизации задач за счет удобных и продвинутых встроенных инструментов ЯП;
  • разработке игрового программного обеспечения, выступая как самостоятельным инструментом, так и дополнительным;
  • графическом дизайне и обработке различных изображений – для автоматизации рутинных задач;
  • робототехнике.

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

Особенности

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

  1. Наличие простого и понятного синтаксиса. Это приводит к повышению читабельности исходного кода. Текст приложения будет чистым и лаконичным. С ним разберется даже начинающий программист.
  2. Поддержка активным сообществом разработчиков. Эта особенность обеспечивает языку весьма обширную документацию, разнообразие библиотек, фреймворков, модулей и решений для самых разных задач.
  3. Пайтон значительно упрощает разработку и отладку за счет программирования с построчной обработкой.
  4. Поддержка разнообразных платформ и операционных систем. Она обеспечивает гибкость и переносимость готовых приложений.
  5. Наличие стандартных библиотек и сторонних модулей, используемых для упрощения и ускорения разработки. Большинство программного обеспечения пишется не с нуля.
  6. Динамическая типизация. Это значит, что переменные могут менять свой тип данных во время исполнения исходного кода.

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

Предварительная подготовка

Пайтон требует от начинающих разработчиков небольшой предварительной подготовки. Она заключается в установке ЯП и специализированных инструментов программиста.

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

  1. Открыть официальный сайт рассматриваемого языка программирования.
  2. Перейти в раздел «Downloads» и выбрать версию языка. Последние сборки обычно отображаются на главной странице веб-сервиса.
  3. Дождаться скачивания дистрибутива для выбранной операционной системы, нажав на соответствующую кнопку на экране.
  4. Запустить «Мастер установки». Иногда для успешного продолжения инициализации требуются права администратора.
  5. Следовать подсказкам на экране. Обычно достаточно кликать по «Далее», соглашаться с предлагаемыми правилами и принципами обслуживания, а также указывать пути инициализации. По умолчанию дистрибутив устанавливается в Windows в папку Program Files или по пути /usr/local/bin в Linux и MacOS.
  6. Открыть командную строку или терминал, ввести python –version. Если язык установлен, в консоли отобразится версия Пайтона.

Старые версии Linux и MacOS были оснащены Питоном заранее. На них ничего устанавливать не требовалось. Для Windows скачивание дистрибутива с официального сайта ЯП всегда являлось обязательным.

Основы программирования

Чтобы сделать собственную программу и записать ее код, одного установленного Пайтона будет недостаточно. Разработчик должен сначала изучить основные (базовые) элементы ЯП. Далее будет представлена информация, которая позволит начать работать с Python с нуля максимально комфортно.

Ключевые слова

Даже самая маленькая программа на Питоне будет иметь ключевые слова. Это зарезервированные синтаксисом языка слова. Они используются для реализации функций и инструментов.

При написании приложений разработчики будут создавать собственные ключевые слова. Они называются переменными (variables). Подбор правильного имени переменной – достаточно простая задача. Главное не использовать ранее зарезервированные синтаксисом слова.

Основы разработки на Python
Основы разработки на Python

Выше можно увидеть список актуальных для Пайтона ключевых слов. Основной упор при обучении у новичков делается на возможности приложений (исходного кода) «разговаривать». Для этого используется команда print.

Основы разработки на Python

Если написать пример кода, представленный выше, в консоли после его обработки появится запись «Hello, world!» (без кавычек). Предложение здесь начинается с print, которое воспринимается системой как команда «печать» или «вывод». Далее следует строка текста в кавычках, заключенная предварительно в скобки. Это запись, которую будет обрабатывать и выводить print.

Типизация и значения

Любая программа, написанная на Питоне, работает с разнообразными значениями. Они обозначаются как values и являются базовыми элементами. Значениями называются данные, которыми оперирует программное обеспечение. Вот несколько примеров:

  • цифры: 2, 5, 8, 91;
  • текст – строка «Hello, World!»

Значения относятся к разным типам данных. У рассматриваемого средства разработки поддерживается динамическая типизация. Она позволяет приложению «понимать», какие значения и типы данных использует исходный код, а затем обрабатывать соответствующие элементы должным образом.

Print умеет работать с самыми разными значениями. Пример – с числовыми. При записи print (5) в консоли появится число 5. Изучаемый ЯП умеет работать с такими типами данных как:

  1. Int – целые числа. Используются для хранения любых чисел. Сюда относятся все положительные и отрицательные числа, а также ноль. Они используются при счете.
  2. Float – вещественные числа. Это значения с дробной частью, которая отделяется запятой.
  3. Str (String) – строки. Включают в себя любые символьные наборы, заключенные в двойных или одинарных кавычках. Разницы между ними нет. Главное – использовать при написании кода один и тот же тип кавычек.
  4. List – списки. Тип данных, который включает в себя некоторые последовательности.
  5. Bool – логические значения. Они встречаются только двух типов: истина (true) и ложь (false). В основном используются в циклах и при решении математических задач.

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

Переменные

У Python имеется возможность манипулирования переменными. Так называется именованная ячейка памяти, которая выделяется для работы в программе. Она хранит в себе некоторые данные, доступные для вывода через print. Переменная будет ссылаться на определенное значение в памяти. С такими элементами работает абсолютно любая программа – даже самая маленькая.

Чтобы использовать переменную в исходном коде, ей сначала необходимо присвоить то или иной значение. Доступ к нему осуществляется через имя переменной. Для присваивания значения используется так называемая «инструкция присваивания». Она обозначается как знак равенства (=).

Основы разработки на Python

Выше – готовый код для проверки принципов работы с рассматриваемым элементом разработки. В консоли появится характерное сообщение об ошибке. Оно укажет на неправильный синтаксис, используемый в коде.

Такое поведение связано с тем, что разработчик попытался использовать зарезервированное слово class для имени переменных. Это невозможно. Как только язык увидит ключевое слово, он будет обрабатывать его особым образом, а не как «название» для классов и иных элементов будущего приложения. Из-за этого возникает характерное сообщение о синтаксической ошибке.

Значения переменных можно вывести на экран через функцию print:

Основы разработки на Python
Основы разработки на Python

Выше – пример того, как выглядит команда print в Python при выводе переменных на экран. Можно использовать type для отображения data type. В Python этот момент зависит от того, на данные какого типа будет ссылаться переменная.

Основы разработки на Python

Выше – образец того, как выглядит простой способ получения информации о data types для переменных.

Присваивание имен

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

  1. Нельзя использовать в именах ключевые слова.
  2. Имена объектов исходного кода должны однозначно «документировать элемент». Это значит, что «названия» должны хорошо и понятно характеризовать то, для чего они используются или что описывают.
  3. Имя может быть сколь угодно длинным, но включать в себя оно может буквы и цифры.
  4. Имена не могут начинаться с цифр.
  5. Негласное синтаксическое правило, которое подойдет для начинающих, – использование заглавных букв для разделения слов (в сложных названиях).
  6. Не рекомендуется пользоваться заглавными буквами для односложных переменных. Они больше подходят для классов и методов.
  7. Более опытные разработчики могут разделять слова в именах при помощи нижнего подчеркивания. С него же могут начинаться названия переменных в Python, но такие элементы имеют специальное предназначение.

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

Инструкции

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

Соответствующие команды выполняются друг за другом. Это происходит до тех пор, пока все инструкции в исходном документе не будут выполнены. Python считывает инструкции сверху–вниз.

Print – это маленькая инструкция. Присваивание значений объектам исходного кода – тоже. Инструкции выполняются за счет вычислений выражений одного за другим. После этого система применит необходимые операции (среди которых встречается print) к соответствующим выражениям.

Выражения

Выражения (expressions) – комбинации значений, переменных и операторов. В языках разработки значение – это само по себе выражение.

Основы разработки на Python

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

Вызов функции – это тоже выражение.

Операторы и операнды

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

Основы разработки на Python

Выше – пример того, как выглядит список арифметических операторов. Они помогают получать корректные решения математических задач. Разные ЯП могут использовать различные принципы работы одних и тех же операторов. Пример – в C результатом деления целого числа на целое станет целочисленный «параметр». При возникновении остатка система отбросит его и округлит результат до меньшего целого. Для вывода результата используется не print, а printf:

Основы разработки на Python

Для получения корректного ответа необходимо использовать тип float.:

Основы разработки на Python

У Питона результат деления целого числа на целое – это число с плавающей точкой:

Основы разработки на Python

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

Основы разработки на Python

Порядок расчетов примерно такой: выражения в скобках, возведение в степень, умножение, деление, модуль, сложение, вычитание. Если операторы имеют одинаковый приоритет (умножение/деление/модуль, сложение/вычитание), они будут выполняться слева-направо.

Условный оператор

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

  1. If – основной условный оператор. Используется для того, чтобы проверить условие и выполнение фрагмента программы. Функция реализовывается, если условие является истиной.
  2. If-else – применяется, когда нужно выбрать действие из двух возможных. Если значение выражения после if является истиной, выполняется одна операция. В противном случае – то, что написано после else.
  3. If-elif-else. Сложное ветвление. Дает возможность выбрать алгоритм действий из нескольких предложенных. Система будет проверять каждый блок elseif, пока не найдет true-значение. Если оно не обнаружено, выполнится блок else.

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

Консольный ввод

В некоторых приложениях можно писать различные данные и информацию. Для вывода сведений в консоль используется print. Для консольного ввода у рассматриваемого ЯП используется встроенная функция – input. Она работает иначе, чем print. При обработке input система остановит выполнение исходного кода и будет ждать пользовательского ввода. Как только информация будет введена, а клиент нажмет на Enter, приложение продолжит работать.

Для работы со входными данными требуется их сохранение. Это делается через переменные:

Основы разработки на Python

Input и print не исключают друг друга. Они могут использоваться совместно для выполнения некоторых команд и операций.

Циклы

Еще одним важным элементом разработки служат циклы. Они могут называться «петлями». С их помощью можно организовывать повторение определенных фрагментов кода. Пример – print (печать в консоли).

Циклы используются для автоматизации повторяющихся задач. В рассматриваемом ЯП используются различные виды «петель»:

  • бесконечные;
  • for;
  • while.

Результаты обработки могут выводиться через print в консоль. От них иногда строится ветвление исходного приложения (выбор последующего алгоритма действий).

While

While – простой и понятный цикл. Он называется циклом с предусловием:

Основы разработки на Python

Здесь print срабатывает после выполнения условия «Пока x меньше 5, печатать x и после – прибавлять в нему единицу». Неправильное или нелогичное условие while обеспечит бесконечный цикл.

Для остановки цикла используются команды break и continue.

For

For – более распространенный вариант цикла в Python и других языках. Для него устанавливается не условие в чистом виде, а массив информации. При каждой итерации система будет уточнять, есть ли в объекте элементы, по которым еще не осуществлялся проход. For тоже может использоваться с print.

Основы разработки на Python

В предложенном фрагменте:

  1. Переменная number обновляется при каждой итерации.
  2. Сначала number включает в себя первый элемент. Он выводится через print.
  3. Далее, на второй итерации, значение будет равно второму элементу.
  4. Операция повторяется до конца списка.

Используемую переменную можно назвать любым именем.

Наглядные примеры

Основы разработки на Пайтоне уже рассмотрены. Теперь можно изучить несколько интересных примеров приложений.

Заряд аккумулятора

Проверить заряд аккумулятора на устройстве помогает встроенный модуль psutil. Он включен в стандартную Питон-библиотеку и не требует предварительной инициализации:

Основы разработки на Python

Программу можно улучшить при помощи добавления уведомления о низком заряде. Для этого используется модуль pyautogui. Он может быть загружен через pip install:

Основы разработки на Python

Здесь можно заметить использование циклов.

Текст в голос

Преобразование text в голос на PY можно за счет библиотеки gTTS. Она не включена в стандартную библиотеку и устанавливается за счет pip:

Основы разработки на Python

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

Генерирование пароля

А вот небольшая утилита на Python, которая поможет сгенерировать разнообразные пароли:

Основы разработки на Python

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

Конвертер

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

Основы разработки на Python

Здесь задействован модуль Pillow. Он не включен в стандартную библиотеку. Требует предварительной установки за счет команды pip install Pillow. Только после этого можно задействовать инструмент в разработке.

Интересует Python? Добро пожаловать на курс в Otus!