Conditional Statements in Python (if, elif, else)


Table of Contents

  • Introduction
  • What Are Conditional Statements?
  • The if Statement
  • The elif Statement
  • The else Statement
  • Nested Conditional Statements
  • Logical Operators with Conditionals
  • Using Conditional Statements with Loops
  • Practical Code Examples
  • Common Mistakes and Best Practices
  • Final Thoughts

Introduction

Conditional statements are one of the foundational concepts in Python programming. They allow your program to make decisions based on certain conditions, which makes it possible to execute different blocks of code depending on whether a condition is True or False. In this article, we will dive deep into conditional statements in Python, focusing on the if, elif, and else statements. By the end, you will understand how to use these statements effectively and how they can be combined with logical operators and loops to create powerful decision-making structures in your code.


What Are Conditional Statements?

A conditional statement is a statement that controls the flow of execution based on whether a specific condition evaluates to True or False. Python provides several ways to work with conditional logic, including the if, elif, and else keywords. These statements allow you to check conditions and make decisions within your code.

  • if: The if statement evaluates a condition and, if it evaluates to True, executes a block of code.
  • elif: The elif (else if) statement allows you to check multiple conditions. If the preceding if or elif conditions evaluate to False, Python checks the elif condition.
  • else: The else statement defines the block of code to execute when none of the preceding if or elif conditions are met.

The if Statement

The most basic form of a conditional statement in Python is the if statement. It evaluates a condition and executes the associated code block if the condition is True.

Syntax:

if condition:
# Code block to execute if condition is True

Example:

age = 18
if age >= 18:
print("You are an adult.")

In this example, the condition age >= 18 is evaluated. Since the condition is True, the message “You are an adult.” is printed.


The elif Statement

The elif statement, short for “else if,” is used when you have multiple conditions to check. If the initial if condition is False, Python will check the elif condition. You can have multiple elif statements in a single block.

Syntax:

if condition1:
# Code block if condition1 is True
elif condition2:
# Code block if condition2 is True

Example:

age = 20
if age < 18:
print("You are a minor.")
elif age >= 18 and age < 21:
print("You are an adult, but not yet 21.")
else:
print("You are 21 or older.")

In this example:

  • If age is less than 18, the first if block executes.
  • If age is between 18 and 20, the elif block executes.
  • If age is 21 or older, the else block executes.

The else Statement

The else statement is used to execute a block of code when all the preceding if and elif conditions evaluate to False. It is an optional part of a conditional structure but ensures that one block of code always runs if no conditions are met.

Syntax:

if condition1:
# Code block if condition1 is True
elif condition2:
# Code block if condition2 is True
else:
# Code block if all conditions are False

Example:

age = 15
if age >= 18:
print("You are an adult.")
else:
print("You are a minor.")

Since age = 15, the if condition is False, and the else block is executed, resulting in the output “You are a minor.”


Nested Conditional Statements

You can nest conditional statements within each other. This allows you to check multiple conditions in a hierarchical manner. It’s important to maintain clear and readable code when using nested conditionals to avoid complexity.

Example:

age = 25
if age >= 18:
if age >= 21:
print("You are an adult and can drink alcohol.")
else:
print("You are an adult but cannot drink alcohol.")
else:
print("You are a minor.")

In this example, the first if checks if the person is an adult. If the age is 21 or older, it prints that the person can drink alcohol. Otherwise, it prints that they cannot.


Logical Operators with Conditionals

Logical operators (and, or, not) are often used in combination with if, elif, and else statements to create more complex conditions.

  • and: Returns True if both conditions are True.
  • or: Returns True if at least one of the conditions is True.
  • not: Reverses the Boolean value of the condition.

Example:

age = 25
has_drivers_license = True

if age >= 18 and has_drivers_license:
print("You can drive a car.")
else:
print("You cannot drive a car.")

In this example, both conditions must be True for the if block to execute. If either condition is False, the else block will execute.


Using Conditional Statements with Loops

Conditional statements are commonly used inside loops to control the flow of execution based on specific conditions.

Example:

numbers = [1, 2, 3, 4, 5]
for num in numbers:
if num % 2 == 0:
print(f"{num} is even.")
else:
print(f"{num} is odd.")

This loop iterates over a list of numbers and prints whether each number is even or odd using an if-else statement.


Practical Code Examples

Example 1: Checking Voting Eligibility

age = 18
if age >= 18:
print("You are eligible to vote.")
else:
print("You are not eligible to vote.")

Example 2: Grade Evaluation

grade = 85
if grade >= 90:
print("You got an A.")
elif grade >= 80:
print("You got a B.")
elif grade >= 70:
print("You got a C.")
else:
print("You failed.")

Common Mistakes and Best Practices

Common Mistakes

  1. Missing colons (:): Every if, elif, and else statement must end with a colon. Forgetting this will result in a SyntaxError.
  2. Improper indentation: Python relies on indentation to define the scope of blocks. Make sure all code within an if, elif, or else block is properly indented.
  3. Confusing if with else if: In Python, the correct syntax is elif (not else if as in other programming languages).

Best Practices

  • Use clear and descriptive condition checks to make your code easy to read.
  • Avoid deeply nested conditionals whenever possible, as they can make your code harder to follow.
  • Use logical operators effectively to combine multiple conditions in a single if, elif, or else block.

Final Thoughts

Conditional statements are an essential part of Python programming. Understanding how to use if, elif, and else effectively allows you to control the flow of your programs and make decisions based on specific conditions. Combine these basic structures with logical operators and loops to create more complex decision-making algorithms. As you continue learning, mastering conditionals will help you write more efficient, readable, and functional Python code.

Syskoolhttps://syskool.com/
Articles are written and edited by the Syskool Staffs.