Cómo usar if, else y elif en Python Lambda Functions

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))
Producción

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))
Producción

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

Deja una respuesta

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