Python Anónimo/Función Lambda

¿Qué son las funciones lambda en Python?

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

Mientras que las funciones normales se definen usando el def palabra clave en Python, las funciones anónimas se definen usando la lambda palabra 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

lambda arguments: expression

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 usar donde se requieran objetos de función.


Ejemplo de función Lambda en python

Aquí hay 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))

Producción

10

En el programa anterior, lambda x: x * 2 es la función lambda. Aquí X es el argumento y x * 2 es 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

double = lambda x: x * 2

es casi lo mismo que:

def double(x):
   return x * 2

Uso de la función Lambda en python

Usamos funciones lambda cuando requerimos una función sin nombre por un corto período 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()

los filter() La 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 la función se evalúa como True.

Aquí hay un ejemplo de uso de 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)

Producción

[4, 6, 8, 12]

Ejemplo de uso con map()

los map() La 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.

Aquí hay un ejemplo de uso de 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)

Producción

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

Publicaciones Similares

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *