Python if...else Statement

In this tutorial, you will learn about the Python if...else statement with the help of examples to create decision-making programs.

Video: Python if...else Statement

In computer programming, we use the if statement to run a block code only when a certain condition is met.

For example, assigning grades (A, B, C) based on marks obtained by a student.

  1. if the percentage is above 90 , assign grade A
  2. if the percentage is above 75 , assign grade B
  3. if the percentage is above 65 , assign grade C

In Python, there are three forms of the if...else statement.

  1. if statement
  2. if...else statement
  3. if...elif...else statement

1. Python if statement

The syntax of if statement in Python is:

if condition:
    # body of if statement

The if statement evaluates condition .

  1. If condition is evaluated to True , the code inside the body of if is executed.
  2. If condition is evaluated to False , the code inside the body of if is skipped.
How if statement works in Python
Working of if Statement

Example 1: Python if Statement

number = 10

# check if number is greater than 0
if number > 0:
    print('Number is positive.')

print('The if statement is easy')

Output

Number is positive.
The if statement is easy

In the above example, we have created a variable named number . Notice the test condition,

number > 0

Here, since number is greater than 0 , the condition evaluates True .

If we change the value of variable to a negative integer. Let's say -5 .

number = -5

Now, when we run the program, the output will be:

The if statement is easy

This is because the value of number is less than 0 . Hence, the condition evaluates to False . And, the body of if block is skipped.


2. Python if...else Statement

An if statement can have an optional else clause.

The syntax of if...else statement is:

if condition:
    # block of code if condition is True

else:
    # block of code if condition is False

The if...else statement evaluates the given condition :

If the condition evaluates to True ,

  • the code inside if is executed
  • the code inside else is skipped

If the condition evaluates to False ,

  • the code inside else is executed
  • the code inside if is skipped
How if...else statement works in Python
Working of if...else Statement

Example 2. Python if...else Statement

number = 10

if number > 0:
    print('Positive number')

else:
    print('Negative number')

print('This statement is always executed')

Output

Positive number
This statement is always executed

In the above example, we have created a variable named number . Notice the test condition,

number > 0

Since the value of number is 10 , the test condition evaluates to True . Hence code inside the body of if is executed.

If we change the value of variable to a negative integer. Let's say -5 .

number = -5

Now if we run the program, the output will be:

Number is negative.
This statement is always executed.

Here, the test condition evaluates to False . Hence code inside the body of else is executed.


3. Python if...elif...else Statement

The if...else statement is used to execute a block of code among two alternatives.

However, if we need to make a choice between more than two alternatives, then we use the if...elif...else statement.

The syntax of the if...elif...else statement is:

if condition1:
    # code block 1

elif condition2:
    # code block 2

else: 
    # code block 3

Here,

  1. If condition1 evaluates to true , code block 1 is executed.
  2. If condition1 evaluates to false , then condition2 is evaluated.
    1. If condition2 is true , code block 2 is executed.
    2. If condition2 is false , code block 3 is executed.
How if...elif statement works in Python
Working of if...elif Statement

Example 3: Python if...elif...else Statement

number = 0

if number > 0:
    print("Positive number")

elif number == 0:
    print('Zero')
else:
    print('Negative number')

print('This statement is always executed')

Output

Zero
This statement is always executed

In the above example, we have created a variable named number with the value 0 . Here, we have two condition expressions:

Here, both the conditions evaluate to False . Hence the statement inside the body of else is executed.


Python Nested if statements

We can also use an if statement inside of an if statement. This is known as a nested if statement.

The syntax of nested if statement is:

# outer if statement
if condition1:
    # statement(s)

    # inner if statement
    if condition2: 
        # statement(s)

Notes :

  • We can add else and elif statements to the inner if statement as required.
  • We can also insert inner if statement inside the outer else or elif statements(if they exist)
  • We can nest multiple layers of if statements.

Example 4: Python Nested if Statement

number = 5

# outer if statement
if (number >= 0):
    # inner if statement
    if number == 0:
      print('Number is 0')
    
    # inner else statement
    else:
        print('Number is positive')

# outer else statement
else:
    print('Number is negative')

# Output: Number is positive

In the above example, we have used a nested if statement to check whether the given number is positive, negative, or 0 .

Did you find this article helpful?