Altcademy - a Forbes magazine logo Best Coding Bootcamp 2023

How to end a loop in Python

Understanding Loops in Python

Loops in Python are like a cycle in real life. Imagine riding a bicycle around a circular track. You keep going round and round until you decide to stop. That's how loops in Python work. They keep executing a block of code until a specific condition is met. Today, we'll learn how to end a loop in Python.

Python's Loop Control Statements

Python provides several loop control statements to manage how loops behave. They are break, continue and pass. These statements are like the brakes, the gear shift, and the bell on your bike. They control when the loop should stop (break), skip a part (continue), or just do nothing (pass). Let's dive into each of them.

The Break Statement

The break statement in Python is like the brakes on your bicycle. When you hit the brakes, the bicycle stops moving, regardless of how big the track is or how fast you're going. Similarly, when Python encounters a break statement, it immediately stops the loop, regardless of the looping condition.

Here's a basic example:

for number in range(10):
    if number == 5:
        break
    print(number)

The range(10) function generates numbers from 0 to 9. The for loop cycles through these numbers. When the number is 5, the break statement stops the loop. Therefore, this code will print the numbers 0 to 4.

The Continue Statement

The continue statement is like a gear shift on your bicycle. When you shift gears, you skip a certain level of effort but keep moving. In a Python loop, when a continue statement is encountered, it skips the rest of the current iteration and moves onto the next one.

Let's look at an example:

for number in range(10):
    if number == 5:
        continue
    print(number)

In this example, when the number is 5, the continue statement is triggered, and the loop skips printing the number 5. For the rest of the numbers, it works as usual. So, the output will be the numbers from 0 to 9, excluding 5.

The Pass Statement

The pass statement in Python is like the bell on your bicycle. It doesn't affect your ride; it just exists. When Python encounters a pass statement, it doesn't do anything. It's a placeholder and is usually used when you have a block of code which is not implemented yet.

Here's how it looks:

for number in range(10):
    if number == 5:
        pass
    print(number)

This script will print all numbers from 0 to 9, because the pass statement does nothing to alter the loop's behavior.

Nesting Loops and Control Statements

Like how you can ride a bike on a circular track and have smaller circles within the big circle, you can have loops within loops in Python. These are called nested loops. And yes, you can use control statements in these nested loops too.

Let's see a quick example:

for outer_number in range(3):
    for inner_number in range(3):
        if inner_number == outer_number:
            break
        print(outer_number, inner_number)

In this nested loop, the break statement will only affect the inner loop. So, when the inner_number equals outer_number, the inner loop breaks, and the next iteration of the outer loop starts.

Infinite Loops and How to Break Them

An infinite loop is like a ride on a circular track where you've lost your brakes. The ride doesn't stop until an external factor intervenes. In Python, an infinite loop keeps running forever, unless it encounters a break statement or the program is forcefully stopped.

Here's how you can create (and stop) an infinite loop:

while True:
    user_input = input("Enter 'q' to quit: ")
    if user_input == 'q':
        break

This script will keep asking you to enter 'q' to quit until you do so. The moment you enter 'q', the break statement stops the loop.

Conclusion - The Loop of Learning

Just like how loops in Python carry out repetitive tasks until a certain condition is met, our learning process is also a loop. We keep cycling through the process of learning, practicing, making mistakes, and learning again until we've fully grasped the concept. And just like how we use break, continue, and pass statements to control loops in Python, we control our learning loop with patience, persistence, and curiosity. So, keep cycling through your learning loop and remember, when the track gets tough, you always have the controls. Happy coding!