Sobes.tech
Junior — Middle
65

Каково отличие между обычной функцией и анонимной функцией (lambda)?

Answer from AI

sobes.tech AI

Обычная функция — это именованная функция, определённая с помощью ключевого слова def и имеющая имя. Анонимная функция (lambda) — это небольшая функция без имени, обычно используемая для кратких операций.

Основные отличия:

  • Имя: обычная функция имеет имя, lambda — нет.
  • Синтаксис: lambda записывается в одну строку, обычно для простых выражений.
  • Использование: lambda часто применяется как аргумент для функций высшего порядка (например, map, filter), когда нужна простая функция на месте.

Пример:

# Обычная функция
def square(x):
    return x * x

# Анонимная функция
square_lambda = lambda x: x * x

print(square(5))         # 25
print(square_lambda(5))  # 25

Lambda-функции удобны для компактного кода, но для сложной логики лучше использовать обычные функции.