English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основной курс Python

Контроль потока в Python

Функции Python

Типы данных Python

Файловые операции в Python

Объекты и классы в Python

Даты и время в Python

Продвинутые знания Python

Руководство по Python

Анонимные функции (Lambda) в Python

В этой статье вы узнаете о анонимных функциях, также называемых функциями lambda. Через примеры вы узнаете, что это за функции, их синтаксис и как их использовать.

Что такое функция lambda в Python?

В Python анонимные функции не имеют имен.Функция.

Хотя в Python ключевое слово def используется для определения обычных функций, ключевое слово lambda используется для определения анонимных функций.

Таким образом, анонимные функции также называются функциями lambda.

Как использовать функцию lambda в Python?

Функция lambda в Python имеет следующий синтаксис.

Синтаксис функции lambda в Python

lambda arguments: expression

Функция lambda может иметь любое количество аргументов, но только одно выражение. Выражение вычисляется и возвращает. Функция lambda может использоваться в любом месте, где требуется объект функции.

Пример функции lambda в Python

Это пример функции lambda, которая удваивает входное значение.

# Пример использования функции lambda
double = lambda x: x * 2
print(double(5))

Результат вывода

10

В приведенном выше коде lambda x: x * 2 - это функция lambda. Здесь x - это аргумент, x * 2 - это выражение, которое вычисляется и возвращает.

Эта функция не имеет имени. Она возвращает объект функции, которыйassingнуется идентификатору double. Теперь мы можем назвать его обычной функцией. Низлежащая декларация

double = lambda x: x * 2

Эквивалентно:

def double(x):
   return x * 2

Использование функции lambda в python

Когда мы временно нуждаемся в анонимной функции, мы используем функцию lambda.

В Python мы обычно используем его в качестве параметра высшей функции (функция, которая принимает другие функции)аргументы)。Функция lambda может использоваться с filter(), map() и другими内置ными функциями.

Пример использования lambda с filter()

Функция filter() в Python принимает функцию и список в качестве параметров.

Функция вызывается для каждого элемента списка, и возвращает новый список, содержащий элементы, для которых функция возвращает True.

Это пример фильтрации только четных элементов из списка с помощью функции filter().

# Программа фильтрует из списка только четные элементы
my_list = [1, 5, 4, 6, 8, 11, 3, 12]
new_list = list(filter(lambda x: (x % 2 == 0), my_list))
print(new_list)

Результат вывода

[4, 6, 8, 12]

Пример использования lambda с map()

Функция map() в Python принимает функцию и список.

Функция вызывается для каждого элемента списка, и возвращает новый список, содержащий элементы, возвращаемые функцией для каждого элемента.

Это пример удвоения всех элементов списка с помощью функции map().

# Использование map() для удвоения каждого элемента списка
my_list = [1, 5, 4, 6, 8, 11, 3, 12]
new_list = list(map(lambda x: x * 2, my_list))
print(new_list)

Результат вывода

[2, 10, 8, 12, 16, 22, 6, 24]