Función Lambda anidada en Python

Requisitos previos: Python lambda

En Python, función anónima significa que una función no tiene nombre. Como ya sabemos, la palabra clave def se usa para definir las funciones normales y la palabra clave lambda se usa para crear funciones anónimas. Cuando usamos la función lambda dentro de otra función lambda, se llama función lambda anidada .

Ejemplo 1:

# Python program to demonstrate
# nested lambda functions
  
  
f = lambda a = 2, b = 3:lambda c: a+b+c
  
o = f()
print(o(4))

Producción:

9

Aquí, cuando se llama al objeto o con el parámetro 4, el control cambia a f(), que es el objeto que llama de toda la función lambda. Entonces se lleva a cabo la siguiente ejecución:

  • La función lambda anidada toma el valor de a y b de la primera función lambda como a=2 y b=3.
  • Toma el valor de c de su objeto llamador o que pasa c = 4.
  • Finalmente obtenemos la salida que es la suma de a, b y c que es 9.

Ejemplo 2:

# Python program to demonstrate
# nested lambda functions
  
  
square = lambda x: x**2
product = lambda f, n: lambda x: f(x)*n
  
ans = product(square, 2)(10)
print(ans)

Producción:

200

En el ejemplo anterior, cuando la función producto se llama función cuadrada se vincula a f y 2 se vincula a n, lo que luego devuelve una función que está vinculada al producto que cuando se llama con 10, se asigna x y se llama cuadrado, que devuelve 100 y este, a su vez, se multiplica por n que es 2. Así que finalmente devolverá 200.

Publicación traducida automáticamente

Artículo escrito por lokesh2405 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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