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