Функция Python Lambda (анонимная)

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

Что такое лямбда-функции в Python?

В Python анонимная функция - это функция, которая определяется без имени.

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

Следовательно, анонимные функции также называются лямбда-функциями.

Как использовать лямбда-функции в Python?

Лямбда-функция в Python имеет следующий синтаксис.

Синтаксис лямбда-функции в Python

 лямбда-аргументы: выражение

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

Пример лямбда-функции в Python

Вот пример лямбда-функции, которая удваивает входное значение.

 # Program to show the use of lambda functions double = lambda x: x * 2 print(double(5))

Вывод

 10

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

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

 double = лямбда x: x * 2

почти то же самое, что:

 def double (x): вернуть x * 2

Использование лямбда-функции в Python

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

В Python мы обычно используем его в качестве аргумента функции высшего порядка (функции, которая принимает другие функции в качестве аргументов). Лямбда-функции используются вместе со встроенными функциями, такими как filter()и map()т. Д.

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

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

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

Вот пример использования filter()функции для фильтрации только четных чисел из списка.

 # Program to filter out only the even items from a list 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)

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

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

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

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

 # Program to double each item in a list using 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)

Интересные статьи...