Ответ
Lambda-функция — это анонимная (безымянная) функция, определяемая в одной строке с помощью ключевого слова lambda. Она может принимать аргументы и возвращает результат вычисления единственного выражения.
Синтаксис (на примере Python):
lambda arguments: expression
Основные характеристики:
- Анонимность: Не требует имени и оператора
def. - Одно выражение: Тело функции ограничено одним выражением, которое автоматически возвращается.
- Использование как объекта: Может быть присвоена переменной или передана как аргумент.
Типичные сценарии использования:
-
Как аргумент для функций высшего порядка (
map,filter,sorted):numbers = [1, 2, 3, 4, 5] squared = list(map(lambda x: x ** 2, numbers)) # [1, 4, 9, 16, 25] evens = list(filter(lambda x: x % 2 == 0, numbers)) # [2, 4] points = [(1, 2), (3, 1), (5, -1)] sorted_by_y = sorted(points, key=lambda point: point[1]) # [(5, -1), (3, 1), (1, 2)] -
Внутри других конструкций (редко, для краткости):
# Присваивание переменной (обычная функция часто предпочтительнее) add = lambda a, b: a + b print(add(5, 3)) # 8
Почему это важно: Лямбды обеспечивают лаконичность при работе с небольшими операциями, особенно в функциональном стиле программирования. Однако для сложной логики всегда следует использовать именованные функции (def) в интересах читаемости и отладки.