Функция — это кнопка с суперсилой
Представь пульт от телевизора. Ты нажимаешь кнопку «Громче» — и звук увеличивается. Тебе не нужно думать, как именно это происходит внутри телевизора. Ты просто нажимаешь кнопку — и получаешь результат. Функция в программировании работает точно так же.
Функция — это блок кода, которому дали имя. Ты пишешь код один раз, называешь его, а потом можешь вызвать по имени сколько угодно раз. Вместо того чтобы копировать одинаковые строки в разных местах программы, ты просто пишешь имя функции.
Как выглядит функция в Python
В Python функция создаётся словом `def` (от «define» — «определить»): `def pozdravit(): print("Привет! Добро пожаловать!")`. Теперь в любом месте программы можно написать `pozdravit()` — и будет выведено приветствие. Одна строка вместо двух, и вызывать можно сколько угодно раз.
Функции могут принимать данные (параметры) и возвращать результат. Например: `def kvadrat(число): return число * число`. Вызов `kvadrat(5)` вернёт 25, `kvadrat(10)` — 100. Одна функция, разные входные данные, разные результаты.
Зачем нужны функции: три причины
Первая: не повторяться. Если одинаковый код встречается в программе три раза — это сигнал завернуть его в функцию. Изменишь функцию в одном месте — изменится везде. Без функции пришлось бы исправлять в трёх местах, рискуя пропустить.
Вторая: понятность. Программа из функций читается как список действий: `загрузить_данные()`, `обработать()`, `вывести_результат()`. Даже не зная, что внутри каждой функции, понятно, что делает программа. Третья: переиспользование — одна хорошо написанная функция может работать в разных программах.
- Убирает повторение кода (DRY — Don't Repeat Yourself)
- Делает программу понятнее
- Позволяет переиспользовать код
- Упрощает поиск ошибок
Функция — это рецепт
Ещё одна аналогия: рецепт блина. В рецепте написано: смешать муку, молоко, яйца; вылить на сковороду; подождать 2 минуты; перевернуть. Это набор шагов с именем «испечь блин». Ты можешь применить этот рецепт 10 раз — испечёшь 10 блинов. Рецепт не меняется, результат — каждый раз блин.
Функция в программировании — это рецепт для компьютера. Написал один раз, вызываешь много раз. Можешь изменить рецепт (функцию) — и все блины (вызовы) сразу станут другими.