La función lambda puede tener múltiples parámetros pero solo una expresión. Esta expresión se evalúa y se devuelve. Por lo tanto, podemos usar funciones lambda como un objeto de función. En este artículo, aprenderemos a usar if, else y elif en las funciones de Lambda.
Usando if-else en la función lambda
La función lambda devolverá un valor para cada entrada validada. Aquí, si se devolverá el bloque cuando la condición sea verdadera, y si no, se devolverá el bloque cuando la condición sea falsa.
Sintaxis:
lambda <argumentos> : <instrucción1> if <condición> else <instrucción2>
Aquí, la función lambda devolverá la declaración 1 cuando la condición sea verdadera y la declaración 2 cuando la condición sea falsa.
Ejemplo:
Aquí, vamos a encontrar si un número es par o impar. cuando pasamos el número 12 a la función lambda, ejecutará la declaración 1 y la declaración 2 para 11.
Python3
# Use if-else in Lambda Functions # check if number is even or odd result = lambda x : f"{x} is even" if x %2==0 else f"{x} is odd" # print for numbers print(result(12)) print(result(11))
12 is even 11 is odd
Usando if else y elif en la función lambda
También podemos usar if anidados, if-else en la función lambda. Aquí crearemos una función lambda para verificar si dos números son iguales, mayores o menores. Implementaremos esto usando la función lambda.
Sintaxis :
lambda <args> : <sentencia1> if <condición> ( <sentencia2> if <condición> else <sentencia3>)
Aquí, la declaración 1 se devolverá cuando la condición sea verdadera, la declaración 2 se devolverá cuando elif sea verdadero y la declaración 3 se devolverá cuando se ejecute else.
Ejemplo :
Aquí, pasamos 2 números a la función lambda. y comprobar la relación entre ellos. Es decir, si un número es mayor, igual o menor que otro número
Python3
# Use if-else in Lambda Functions # check if two numbe is equal or greater or lesser result = lambda x,y : f"{x} is smaller than {y}" \ if x < y else (f"{x} is greater than {y}" if x > y \ else f"{x} is equal to {y}") # print for numbers print(result(12, 11)) print(result(12, 12)) print(result(12, 13))
12 is greater than 11 12 is equal to 12 12 is smaller than 13
Publicación traducida automáticamente
Artículo escrito por rushi_javiya y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA