Las funciones lambda son funciones anónimas, es decir que no tienen nombre. Las funciones lambda se definen en una sola línea.

Lambda se utiliza para simplificar todavía más las funciones pequeñas, para funciones complejas siempre se utiliza la sintaxis normal.

Las funciones lambda no se definen con la palabra clave def como las funciones normales, se definen con la palabra clave lambda.

"Las lambdas de Python son sólo una notación abreviada si eres demasiado perezoso para definir una función"..

Tradución automatica de Documentación oficial

Pasos para crear una función lambda

La siguiente función lambda recoge dos parámetros y los muestra en una cadena.

  1. Definimos la función con la palabra clave lambda.
  2. Añadimos los parámetros separados por comas, en este caso first y last.
  3. Añadimos los dos puntos : y definimos la expresión de la función, sin necesidad de añadir return.
  4. Para poder utilizar la función hay que guardarla en una variable en este caso la variable full_name.

Ya podemos llamar a la función con los argumentos que necesitemos, como en una función común.

full_name = lambda first, last: f'{first} {last}'


print(full_name('Marcel', 'Reig'))

# Output: Marcel Reig

Para ver la diferencia entre una función normal y una función lambda veamos una función normal que suma 3 valores:

def result(x, y, z):
    return x + y + z


print(result(5, 5, 5))

# Output: 15

Ahora veamos la misma función convertida a lambda:

result = lambda x, y, z: x + y + z

print(result(5, 5, 5))

# Output: 15

Posteado en Programación con : Python