Python Lambda – If Else

Python Lambda with If Else

In this tutorial, we will learn how to use if else in Lambda function, to choose a return value based on some condition.

Syntax

Following is the syntax of Python Lambda Function with if else.

lambda <arguments> : <value_1> if <condition> else <value_2>

value_1 is returned if condition is true, else value_2 is returned. You can have an expression that evaluates to a value in the place of value_1 or value_2.

You can have nested if else in lambda function. Following is the syntax of Python Lambda Function with if else inside another if else, meaning nested if else.

lambda <arguments> : <value_1> if <condition_1> else (<value_2> if <condition_2> else <value_3>)

value_1 is returned if condition_1 is true, else condition_2 is checked. value_2 is returned if condition_2 is true, else value_3 is returned.

Example 1: Lambda Function with If Else Condition

In the following example program, we will write a lambda function that returns square of number if number is even, else cube of the number.

Python Program

x = lambda n: n**2 if n%2 == 0 else n**3

print(x(4))
print(x(3))
Run this program

Output

16
27

Example 2: Lambda Function with Nested If Else Condition

We have already mentioned that we can write a nested if else inside lambda function.

In the following example program, we will write a lambda function that returns the number as is if divisible by 10, square of number if number is even, else cube of the number.

Python Program

x = lambda n: n if n%10 == 0 else ( n**2 if n%2 == 0 else n**3 )

print(x(4))
print(x(3))
print(x(10))
Run this program

Output

16
27
10

Summary

Summarizing this tutorial of Python Examples, we learned how to use if else or nested if else in lambda function to conditionally return values.