如何在Python Lambda 函数中使用 if、else 和 elif
Lambda函数可以有多个参数,但只有一个表达式。这一个表达式被评估并返回。因此,我们可以将 lambda 函数用作函数对象。在本文中,我们将学习如何在 Lambda 函数中使用 if、else 和 elif。
在 lambda函数中使用 if-else
lambda函数将为每个经过验证的输入返回一个值。这里,条件为真时返回 if 块,条件为假时返回 else 块。
句法:
lambda
在这里,如果条件为真,lambda函数将返回 statement1,如果条件为假,则返回 statement2。
例子:
在这里,我们将找出一个数字是偶数还是奇数。当我们将数字 12 传递给 lambda函数时,它将为 11 执行语句 1 和语句 2。
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))
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 even
11 is odd
在 lambda函数中使用 if else & elif
我们还可以在 lambda函数中使用嵌套的 if、if-else。在这里,我们将创建一个 lambda函数来检查两个数字是否相等或更大或更小。我们将使用 lambda函数来实现它。
语法:
lambda
这里条件为真时返回statement1,elif为真时返回statement2,执行else时返回statement3。
示例:
在这里,我们将 2 个数字传递给 lambda函数。并检查它们之间的关系。也就是说,如果一个数字大于或等于或小于另一个数字
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