Have you ever written a Python program that needed to make a simple decision? Maybe you wanted to check if a user is old enough to vote, or if a number is odd or even. You quickly realize that not every situation can be handled with a single, straight path. Your code needs to branch, to choose between two different actions based on a condition.

This is where control flow comes in, and the if else statement is one of the most fundamental tools for it. If you already understand the basic if statement, you’re halfway there! In this post, we’re going to level up your skills by introducing the else clause. By the end, you’ll be able to write cleaner, more efficient code that can handle two opposing outcomes with ease.
What is the Python if else Statement?
In simple terms, the if else statement is a way of telling your program: “If this condition is true, run this block of code; otherwise, run that different block of code.”
Think of it like a fork in the road. You have two, and only two, paths to choose from. The condition you test acts as the signpost, directing your code down one path or the other. This is perfect for situations with only two mutually exclusive possibilities, like yes/no, true/false, or odd/even.
Using if else is not only more logical but also more efficient than writing two separate if statements to check for opposite conditions. It makes your intention crystal clear to anyone reading your code.
The Syntax of if else in Python
The structure of an if else statement is straightforward. Pay close attention to the colons (:) and the indentation, as these are crucial in Python.
if condition:
# Code to run if the condition is True
print("This runs when the condition is TRUE!")
else:
# Code to run if the condition is False
print("This runs when the condition is FALSE!")Key things to remember:
- The
ifandelselines must end with a colon (:). - The code blocks under
ifandelsemust be indented (usually by 4 spaces). This indentation is how Python knows which code belongs to which clause.
Practical if else Examples
Let’s solidify this concept with some practical, real-world examples.
Example 1: Checking for Odd or Even Numbers
This is a classic programming problem that perfectly illustrates the use of if else. A number is even if it is divisible by 2 (i.e., number % 2 == 0). If that’s not true, it must be odd.
# Get a number from the user
number = int(input("Enter a number: "))
# Check if it's even or odd using if else
if number % 2 == 0:
print(f"{number} is an even number.")
else:
print(f"{number} is an odd number.")How it works:
- The program asks the user for a number.
- It checks the condition:
number % 2 == 0. - If the condition is
True(e.g., user enters 4), the code inside theifblock runs, printing “4 is an even number.” - If the condition is
False(e.g., user enters 5), Python skips theifblock and executes the code inside theelseblock, printing “5 is an odd number.”
Example 2: Age Verification for Voting
Let’s model a system that checks voting eligibility. The logic is simple: if a person is 18 or older, they can vote; otherwise, they cannot.
# Get the user's age
age = int(input("Please enter your age: "))
# Verify voting eligibility
if age >= 18:
print("You are eligible to vote!")
else:
print("Sorry, you are not eligible to vote yet.")How it works:
- The user provides their age.
- The condition
age >= 18is evaluated. - If the condition is
True, the message “You are eligible to vote!” is printed. - If the condition is
False, the program automatically executes theelseblock, informing the user they are not yet eligible.
Why Use if else Over Two if Statements?
In the voting example, you might think you could achieve the same result with two if statements:
# This works, but it's less efficient
if age >= 18:
print("You are eligible to vote!")
if age < 18:
print("Sorry, you are not eligible to vote yet.")So why use if else? There are two main reasons:
- Clarity and Intent: The
if elsestructure makes it explicitly clear that the two conditions are direct opposites and that only one of the code blocks will ever run. It’s a single, cohesive unit of logic. - Efficiency: With
if else, Python only needs to check the condition once. If it’s true, it runs the first block and knows to skip theelse. In the two-ifversion, Python will check both conditions every single time, which is a tiny bit of wasted effort.
Ready to Go from Basics to Pro?
Mastering foundational concepts like if else is the first step to becoming a proficient Python programmer. But why stop here? Imagine building a complete portfolio of projects, understanding advanced concepts with ease, and having expert guidance every step of the way. A structured course can take you from understanding the basics to writing complex, real-world applications faster than you think.
If you’re serious about mastering Python, check out our pre-recorded python comprehensive video course.
Conclusion
The if else statement is a powerful and essential tool in your Python toolkit. It allows your programs to make binary decisions, executing one block of code when a condition is true and another when it’s false. We’ve seen how it can be used to determine if a number is odd or even and to verify voting eligibility. Remember, the key to mastery is consistent practice, so fire up your code editor and experiment with creating your own if else scenarios!
Common Questions About Python if else
Can I have multiple else clauses with one if?
No, a single if statement can only have one else clause. The else is a catch-all for any situation where the if condition is false. If you need to check multiple distinct conditions, you would use an if-elif-else chain.
What happens if I forget the colon (:) after else?
Python will throw a SyntaxError and your program will not run. The colon is a non-negotiable part of the syntax that tells Python a new indented code block is coming.
How many lines of code can I put inside the if and else blocks?
You can put as many lines of code as you need! Just make sure every line is indented to the same level. The block ends when you return to the previous level of indentation.














