Развернутое объяснение
Функция позволяет вынести повторяющийся или логически цельный фрагмент кода в отдельный блок с именем. Это даёт несколько преимуществ:
Не дублируется код — одна функция может вызываться из разных мест программы;
Код становится более понятным и структурированным;
Проще тестировать и изменять поведение программы, не трогая все места вызова.
Базовый синтаксис объявления функции:
def function_name(parameters):
# тело функции
...
return result # необязательноКлючевые части: def, имя функции, круглые скобки с параметрами и двоеточие, после чего следует блок с отступом.
Для backend‑разработчика функция — базовый строительный блок: ей оформляют работу с базой данных, валидацию данных, бизнес‑логику. На курсах TeoBrain мы постепенно двигаемся от маленьких учебных функций к полноценным обработчикам запросов в веб‑приложениях.
Параметры по умолчанию: как объявить и как это работает
Параметр по умолчанию — это параметр, которому в определении функции сразу задано стандартное значение. Если при вызове функции аргумент для него не передан, используется это значение; если передан — оно его переопределяет.
Синтаксис:
def greet(name, greeting="Hello"):
print(greeting, name)
greet("Аня") # Hello Аня
greet("Максим", "Привет") # Привет МаксимЗдесь важно помнить два правила, которые часто проверяют на собеседовании:
Параметры с значениями по умолчанию должны идти после обязательных.
def func(a, b=10): # корректно
...
# def func(a=10, b): # так нельзя — вызовет SyntaxErrorИначе Python не сможет корректно сопоставить позиционные аргументы с параметрами.
При передаче в качестве значения по умолчанию изменяемых объектов (например, списков) нужно быть осторожным. Часто на собеседовании дают пример с «липким» списком: значение по умолчанию вычисляется один раз при определении функции, а не при каждом вызове. Это тонкость, которую мы подробно разбираем в блоке о функциях нашего курса TeoPython, но для уровня trainee достаточно знать, что по умолчанию чаще ставят простые неизменяемые значения — числа, строки, None.
Как ответить на собеседовании?
Функция в Python — это именованный блок кода, который можно вызывать с аргументами и, при необходимости, возвращать результат. Объявляется через def. Параметры по умолчанию задаются прямо в определении функции через =: def func(a, b=10). Если при вызове аргумент b не передан, используется значение 10.