Función Python Lambda (anónimo)

En este artículo, aprenderá sobre la función anónima, también conocida como funciones lambda. Aprenderá cuáles son, su sintaxis y cómo usarlos (con ejemplos).

¿Qué son las funciones lambda en Python?

En Python, una función anónima es una función que se define sin un nombre.

Mientras que las funciones normales se definen usando la defpalabra clave en Python, las funciones anónimas se definen usando la lambdapalabra clave.

Por lo tanto, las funciones anónimas también se denominan funciones lambda.

¿Cómo usar las funciones lambda en Python?

Una función lambda en Python tiene la siguiente sintaxis.

Sintaxis de la función Lambda en python

 argumentos lambda: expresión

Las funciones Lambda pueden tener cualquier número de argumentos, pero solo una expresión. La expresión se evalúa y se devuelve. Las funciones Lambda se pueden utilizar siempre que se requieran objetos de función.

Ejemplo de función Lambda en python

A continuación se muestra un ejemplo de función lambda que duplica el valor de entrada.

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

Salida

 10

En el programa anterior, lambda x: x * 2es la función lambda. Aquí x es el argumento y x * 2es la expresión que se evalúa y devuelve.

Esta función no tiene nombre. Devuelve un objeto de función que se asigna al identificador double. Ahora podemos llamarlo como una función normal. La declaración

 doble = lambda x: x * 2

es casi lo mismo que:

 def doble (x): return x * 2

Uso de la función Lambda en Python

Usamos funciones lambda cuando necesitamos una función sin nombre por un período corto de tiempo.

En Python, generalmente lo usamos como argumento para una función de orden superior (una función que toma otras funciones como argumentos). Las funciones Lambda se utilizan junto con funciones integradas como filter(), map()etc.

Ejemplo de uso con filter ()

La filter()función en Python toma una función y una lista como argumentos.

Se llama a la función con todos los elementos de la lista y se devuelve una nueva lista que contiene elementos para los que evalúa la función True.

Aquí hay un ejemplo de uso de la filter()función para filtrar solo los números pares de una lista.

 # 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)

Salida

 (4, 6, 8, 12)

Ejemplo de uso con map ()

La map()función en Python toma una función y una lista.

Se llama a la función con todos los elementos de la lista y se devuelve una nueva lista que contiene los elementos devueltos por esa función para cada elemento.

A continuación se muestra un ejemplo de uso de la map()función para duplicar todos los elementos de una lista.

 # 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)

Salida

 (2, 10, 8, 12, 16, 22, 6, 24)

Articulos interesantes...