Основы программирования на Python: Быстрый старт

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

1. Введение в Python: установка окружения, синтаксис и работа с переменными

Введение в Python: установка окружения, синтаксис и работа с переменными

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

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

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

Что такое Python и как он работает?

Python — это интерпретируемый язык высокого уровня. Давайте разберем эти термины, чтобы понимать, что происходит «под капотом».

Язык высокого уровня означает, что он создан для удобства человека. Компьютер понимает только нули и единицы (машинный код), но писать на нем человеку невероятно сложно. Python берет на себя задачу перевода ваших понятных команд в инструкции для процессора.

Интерпретируемый язык означает, что программы на Python не нужно предварительно компилировать (превращать в готовый файл .exe) целиком. Вместо этого существует специальная программа — интерпретатор, которая читает ваш код строчка за строчкой и сразу же его выполняет.

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

Установка окружения

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

Установка на Windows

  • Перейдите на официальный сайт python.org в раздел Downloads.
  • Скачайте последнюю стабильную версию (обычно это большая желтая кнопка).
  • Запустите скачанный установочный файл.
  • ВАЖНО: Внизу окна установки обязательно поставьте галочку напротив пункта Add Python to PATH (Добавить Python в PATH). Если этого не сделать, запускать программы будет сложнее.
  • Нажмите Install Now.
  • Установка на macOS

    На компьютерах Mac часто уже установлена старая версия Python, но для обучения нам нужна актуальная (Python 3).

  • Также перейдите на python.org.
  • Скачайте установщик для macOS.
  • Следуйте стандартным инструкциям установщика.
  • Проверка установки

    После установки нам нужно убедиться, что все работает. Откройте командную строку (Command Prompt в Windows или Terminal в macOS) и введите команду:

    Если вы видите ответ вроде Python 3.10.x или новее, значит, вы готовы к работе.

    Ваша первая программа

    Вместе с Python устанавливается простая среда разработки под названием IDLE. Найдите её в своих программах и запустите. Вы увидите окно с текстом и мигающим курсором — это интерактивная оболочка (Shell). Здесь можно писать команды, и Python будет выполнять их мгновенно.

    Традиционно изучение любого языка начинается с вывода фразы «Привет, мир!». Давайте напишем это.

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

    Вы увидите, как программа ответит вам текстом: Привет, мир!.

    Разберем, что здесь произошло: * print — это функция. Команда компьютеру «напечатать» или «вывести» что-то на экран. * Скобки () указывают на то, что мы вызываем эту функцию. * Текст внутри кавычек "..." — это данные, которые мы передаем функции. В программировании текст называется строкой.

    Синтаксис Python: правила игры

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

    1. Отступы (Indentation)

    Это самая важная особенность Python. В других языках (C++, Java) блоки кода выделяются фигурными скобками {}. В Python для этого используются отступы (пробелы в начале строки).

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

    2. Регистр имеет значение

    Python чувствителен к регистру. Команды print, Print и PRINT — это три разные вещи для компьютера. Правильная команда пишется только маленькими буквами: print.

    3. Комментарии

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

    Переменные: хранение данных

    Программы были бы бесполезны, если бы не могли запоминать информацию. Для этого используются переменные.

    Представьте, что переменная — это коробка, на которую вы наклеили ярлык с именем. В эту коробку вы можете положить какое-то значение (число, текст), а потом найти его по имени ярлыка.

    !Визуальная метафора переменной: коробка с именем (названием переменной), в которой хранится значение.

    Создание переменной

    Чтобы создать переменную, нужно придумать ей имя и присвоить значение с помощью знака равно =.

    Здесь мы создали две «коробки»:

  • Коробку с именем message, в которую положили текст "Добро пожаловать".
  • Коробку с именем count, в которую положили число 5.
  • Важно: Знак = в программировании — это не равенство, как в математике. Это оператор присваивания. Он означает: «Возьми значение справа и положи его в переменную слева».

    Правила именования переменных

    Чтобы ваш код был понятным и рабочим, нужно соблюдать правила при выборе имен: * Имя может состоять из букв (a-z, A-Z), цифр (0-9) и знака подчеркивания _. * Имя не может начинаться с цифры. * Нельзя использовать пробелы (используйте _ вместо них, например my_variable). * Нельзя использовать зарезервированные слова языка (например, print, if, class).

    В Python принято использовать стиль snake_case (змеиный регистр): все буквы маленькие, слова разделяются подчеркиванием. Пример: user_age, total_price.

    Типы данных

    В наши «коробки» можно класть разные вещи. В Python есть несколько базовых типов данных, с которыми вы будете работать постоянно.

    1. Целые числа (int)

    Это обычные числа без дробной части: 1, 10, -5, 1000.

    2. Числа с плавающей точкой (float)

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

    3. Строки (str)

    Это любой текст, заключенный в кавычки (одинарные ' или двойные ").

    Динамическая типизация

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

    Чтобы узнать, какой тип данных хранится в переменной прямо сейчас, можно использовать функцию type():

    Базовые операции

    С переменными можно производить различные операции. Рассмотрим арифметику.

    Допустим, мы хотим рассчитать площадь прямоугольника. В математике формула выглядит так:

    Где — площадь, — длина, — ширина.

    В Python мы запишем это следующим образом:

    Основные математические операторы: * + — сложение * - — вычитание — умножение * / — деление (всегда возвращает float, даже если делится нацело) * — возведение в степень

    Рассмотрим пример с возведением в степень. Формула площади круга:

    Где — площадь круга, — число Пи (приблизительно 3.14159), — радиус круга, а — показатель степени.

    В коде это будет выглядеть так:

    Обратите внимание: для возведения в квадрат мы использовали **, а не ^ (знак ^ в Python делает совсем другую операцию с битами).

    Ввод данных от пользователя

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

    Когда программа дойдет до строчки с input(), она остановится и будет ждать, пока пользователь введет текст и нажмет Enter. Введенный текст сохранится в переменную name.

    Важный нюанс: Функция input() всегда возвращает строку (текст). Даже если пользователь введет число «50», для Python это будет строка «50». Если вы захотите использовать это число для математики, вам придется превратить его в настоящий числовой тип.

    Для преобразования типов используются функции int() (в целое) и float() (в дробное).

    Пример калькулятора возраста:

    Если бы мы не использовали int(), Python выдал бы ошибку, так как нельзя вычитать текст из числа.

    Заключение

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

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

    2. Управление потоком выполнения: условные операторы и циклы

    Управление потоком выполнения: условные операторы и циклы

    В предыдущей статье мы научились создавать переменные, работать с типами данных и писать простейшие линейные программы. Однако реальная жизнь редко бывает линейной. Мы постоянно принимаем решения: «Если пойдет дождь, я возьму зонт, иначе пойду в футболке». Мы также часто повторяем действия: «Пока не выучу урок, буду читать книгу».

    В программировании за эту логику отвечают управляющие конструкции. Они позволяют программе не просто выполнять команды сверху вниз, а ветвиться и зацикливаться. Сегодня мы разберем два фундаментальных столпа алгоритмов: условные операторы и циклы.

    Логический тип данных

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

    * True (Истина) * False (Ложь)

    Обратите внимание: эти слова пишутся с большой буквы. Это не строки, поэтому кавычки не нужны.

    Операторы сравнения

    Чтобы получить True или False, мы обычно сравниваем значения. Вот основные инструменты для этого:

    * == — равно (не путайте с =, который присваивает значение) * != — не равно * > — больше * < — меньше * >= — больше или равно * <= — меньше или равно

    Пример:

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

    Самый простой способ заставить программу «подумать» — использовать конструкцию if (если).

    Синтаксис выглядит так:

    Здесь критически важны отступы (обычно 4 пробела). Всё, что написано с отступом после двоеточия, выполнится только в том случае, если условие истинно (True).

    !Схема работы оператора if: код выполняется только при истинности условия.

    Пример проверки возраста:

    Если age будет равно 15, фраза «Доступ разрешен» не появится, но «Программа завершена» выведется в любом случае, так как она написана без отступа и не зависит от условия.

    else: Что делать в противном случае?

    Часто нам нужно не просто пропустить действие, а выполнить альтернативное. Для этого существует оператор else (иначе).

    elif: Множественный выбор

    А что, если вариантов больше двух? Например, светофор: красный, желтый, зеленый. Для этого используется elif (сокращение от else if — иначе если).

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

    Логические операторы

    Иногда нужно проверить сразу несколько условий. Например: «Если у пользователя есть логин И пароль верный». Для этого используются логические связки:

  • and (И) — истина, только если оба условия верны.
  • or (ИЛИ) — истина, если хотя бы одно условие верно.
  • not (НЕ) — переворачивает значение (делает True из False и наоборот).
  • Пример:

    Циклы: автоматизация повторений

    Представьте, что вам нужно вывести на экран фразу «Привет» 100 раз. Копировать строку print("Привет") 100 раз — плохая идея. Если нужно будет изменить текст, придется править 100 строк. Для повторения действий используются циклы.

    Цикл while (Пока)

    Цикл while выполняет блок кода до тех пор, пока условие остается истинным.

    Разберем, что происходит:

  • Создаем переменную count со значением 1.
  • Проверяем: 1 меньше или равно 5? Да (True).
  • Печатаем текст.
  • Увеличиваем count на 1 (теперь 2).
  • Снова проверяем условие. И так далее, пока count не станет 6. Тогда условие 6 <= 5 станет False, и цикл остановится.
  • Осторожно: Бесконечный цикл! Если вы забудете строку count = count + 1, переменная count всегда будет равна 1, условие всегда будет истинным, и программа зависнет, бесконечно печатая текст. Чтобы прервать такую программу, обычно используют сочетание клавиш Ctrl+C.

    Цикл for (Для)

    Цикл for в Python устроен очень элегантно. Он перебирает элементы в какой-либо последовательности (например, в строке или диапазоне чисел).

    !Визуализация работы цикла for: последовательный перебор элементов.

    Пример перебора строки:

    Этот код напечатает каждую букву слова «Python» с новой строки. Переменная letter на каждом шаге цикла автоматически принимает значение следующей буквы.

    #### Функция range()

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

    Синтаксис: range(старт, стоп, шаг).

    * range(5) — числа от 0 до 4 (5 не включается!). * range(1, 6) — числа от 1 до 5. * range(1, 10, 2) — числа от 1 до 9 с шагом 2 (1, 3, 5, 7, 9).

    Пример:

    Вывод:

    Математический пример: Сумма чисел

    Допустим, нам нужно посчитать сумму всех чисел от 1 до . В математике это записывается так:

    Где — искомая сумма, — знак суммирования, — переменная счетчика, которая меняется от 1 до .

    Реализуем это с помощью цикла for:

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

    Где — последнее число последовательности. Но для компьютера перебор — это базовая операция, и циклы нужны там, где формулы не работают (например, при чтении строк из файла).

    Управление внутри цикла: break и continue

    Иногда нам нужно вмешаться в стандартную работу цикла.

    break (Прервать)

    Команда break немедленно останавливает выполнение цикла, даже если условие всё еще истинно или элементы не закончились.

    Пример: Ищем первое число, которое делится на 7, в диапазоне от 100.

    continue (Продолжить)

    Команда continue прерывает текущую итерацию (текущий круг) и переходит к следующему шагу цикла, пропуская весь код ниже себя.

    Пример: Распечатать только нечетные числа.

    Практика: Игра «Угадай число»

    Давайте объединим всё, что мы узнали (переменные, ввод данных, преобразование типов, условия и циклы), чтобы написать простую игру.

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

    Здесь мы использовали конструкцию while True, которая создает бесконечный цикл. Единственный способ выйти из него — выполнить команду break, которая срабатывает только при правильном ответе.

    Заключение

    Теперь ваши программы перестали быть простыми инструкциями. Они умеют анализировать ситуацию с помощью if и выполнять рутинную работу с помощью for и while. Это огромный шаг вперед.

    В следующей статье мы разберем структуры данных: списки, кортежи и словари. Это позволит нам хранить и обрабатывать большие объемы информации удобным способом.