Python

for loop in Python

Click for All Topics

for loop in Python

A for loop helps you go through a bunch(sequential) of items one by one, like words in a sentence or numbers in a list, and do something with each item in a quick and easy way.

Syntax:

# General code of for loop
for item in iterable:
# Code block - do something with 'item'
	print(item)

Explanation:

A  programmer named Jay. He had to perform the same task repeatedly. He learned to use the “for” loop to handle this task in his programming.

In the same way, a “for” loop in programming helps you repeat a set of actions for each item.

Code:

				
					# Using a for loop for Jay's daily task
for day in range(1, 11):  # Assuming 10 days for demonstration
    print("Day", day, ": Perform the task")

# Output -
# Day 1 : Perform the task
# Day 2 : Perform the task
# Day 3 : Perform the task
# Day 4 : Perform the task
# Day 5 : Perform the task
# Day 6 : Perform the task
# Day 7 : Perform the task
# Day 8 : Perform the task
# Day 9 : Perform the task
# Day 10 : Perform the task
				
			

Examples of for loop:

1.With range function:

Range() is used to create a sequence of numbers and by default, it starts with 0 but we can change this default value. You tell it where to start, where to end, and how to step(step size).

It is commonly used with a for loop. It is a versatile function and has many advantages.

💡Note: range(5) means values from 0 to 4 and not 0 to 5.

Example:

				
					# Example of a for loop with range function
for i in range(1, 6):
	print("Iteration:", i)

# Output -
# Iteration: 1
# Iteration: 2
# Iteration: 3
# Iteration: 4
# Iteration: 5
				
			

Example: for loop with a step size

Step size is a  parameter that lets you define the interval between consecutive values in the sequence.

💡Note: range(2,7,3) here 3 is step size which is generally 1 by default.

 

 

2. With list: Example of a for loop with a step size using a list
				
					start = 1      # Starting value
end = 10       # Ending value (inclusive)
step = 2       # Step size
for number in range(start, end + 1, step):
	print("Current number:", number)

# Output -
# Current number: 1
# Current number: 3
# Current number: 5
# Current number: 7
# Current number: 9
				
			
				
					# Example of a for loop with list.
values = [1, 3, 5, 7, 9]
for number in values:
	print("Current number:", number)

# Output -
# Current number: 1
# Current number: 3
# Current number: 5
# Current number: 7
# Current number: 9
				
			
3. With Dictionary: Example of a for loop with dictionary.
				
					fruits = {"apple": 5, "banana": 6, "orange": 6, "grape": 5}
for fruit  in fruits.keys():
	print("There are fruits",fruit)

# Output -
# There are fruits apple
# There are fruits banana
# There are fruits orange
# There are fruits grape



fruits = {"apple": 5, "banana": 6, "orange": 6, "grape": 5}
for quantity  in fruits.values():
	print("There are fruits",quantity)

# Output -
# There are fruits 5
# There are fruits 6
# There are fruits 6
# There are fruits 5



fruits = {"apple": 5, "banana": 6, "orange": 6, "grape": 5}
for fruit, quantity in fruits.items():
	print(f"There are {fruit} and there quantity are",quantity)


# Output -
# There are apple and there quantity are 5
# There are banana and there quantity are 6
# There are orange and there quantity are 6
# There are grape and there quantity are 5
				
			
4. With string: Example of a for loop with string.
				
					n="fruits"
for i in n:
	print(i)

# Output -
# f
# r
# u
# i
# t
# s
				
			
5. With tuple: Example of a for loop with tuple
				
					n=(1,2,3,4,6)
for i in n:
	print(i)

# Output -
# 1
# 2
# 3
# 4
# 6
				
			
6. With else: Example of a for loop with ‘else’

💡Note: The else block will not be executed if the loop is stopped by a break statement.

				
					n=(1,2,3,4,6)
for i in n:
	print("number in n:",i)
else:
	print('numbers over')

# Output -
# number in n: 1
# number in n: 2
# number in n: 3
# number in n: 4
# number in n: 6
# numbers over
				
			

7. Nested for loop:

A nested for loop is like a tool in programming that’s often used to create interesting patterns using code. Think of it as a way to build shapes or designs using stars, numbers, or other symbols.

Example –

				
					# Nested for loop example
for row in range(1, 4):
    for col in range(1, 4):
        print("Row:", row, "| Column:", col)

# Output -
# Row: 1 | Column: 1
# Row: 1 | Column: 2
# Row: 1 | Column: 3
# Row: 2 | Column: 1
# Row: 2 | Column: 2
# Row: 2 | Column: 3
# Row: 3 | Column: 1
# Row: 3 | Column: 2
# Row: 3 | Column: 3
				
			

💡Note: We cannot use logical and conditional expressions directly with for loop but we can use them inside for loop using if or while.

8. Exception handling :

Exception handling in a for loop is like having a backup plan for when things don’t go as expected.

				
					numbers = [2, 4, 6, 8, 10, 'twelve']

for num in numbers:
    try:
        result = 20 / num
    except ZeroDivisionError:
        print("Cannot divide by zero.")
    except TypeError:
        print("Invalid type. Expected a number.")
    else:
        print("20 divided by", num, "is:", result)
    finally:
        print("Calculation finished for", num)

# Output -
# 20 divided by 2 is: 10.0
# Calculation finished for 2
# 20 divided by 4 is: 5.0
# Calculation finished for 4
# 20 divided by 6 is: 3.3333333333333335
# Calculation finished for 6
# 20 divided by 8 is: 2.5
# Calculation finished for 8
# 20 divided by 10 is: 2.0
# Calculation finished for 10
# Invalid type. Expected a number.
# Calculation finished for twelve
				
			

Advantages of For Loop:


  • Easy to control number of iterations.

  • Suitable for iterating over sequences.

  • Simplifies working with lists and ranges.

  • Reduces chances of infinite loops.

  • Provides a clean and compact code.

  • Automates repetitive tasks efficiently.