Welcome, Python astronauts, to the intergalactic tour of nested loops in Python! Just like spaceships in formation, nested loops tackle layered problems. Our mission today is to understand the syntax and applications of nested loops, all of which will be enriched with a practical example.
Nested loops are simply loops within loops. They function much like stars and planets in the cosmos. Each celestial body (an outer loop star
) has smaller bodies (inner loop planets
) revolving around it. Similarly, for each iteration of an outer loop, an inner loop executes completely.
Nested loops follow a hierarchical structure. For each iteration of an outer loop, an inner loop executes fully:
Python1for outer_variable in outer_sequence: 2 for inner_variable in inner_sequence: 3 # Inner loop statements
Here's an example of a nested loop using Python's range()
function. In this example, i
represents different types of spaceships, and j
represents various spaceship features:
Python1for i in range(1, 4): # Outer loop 2 print('Start', i) 3 for j in range(1, 4): # Inner loop 4 print(i, j) # Prints spaceship type `i` and its attribute `j` 5 print('End', i)
The code prints:
Markdown1Start 1 21 1 31 2 41 3 5End 1 6Start 2 72 1 82 2 92 3 10End 2 11Start 3 123 1 133 2 143 3 15End 3
Nested while
loops also use an outer-inner structure:
Python1while outer_condition: # Outer loop condition 2 while inner_condition: # Inner loop condition 3 # Inner loop statements
Here's an example with nested while
loops:
Python1i = 1 # Outer loop variable, representing spaceship types 2while i <= 3: 3 print('Start', i) # Start of each spaceship type iteration 4 j = 1 # Inner loop variable, signifying spaceship features 5 while j <= 3: # Inner loop runs three iterations for each spaceship type 6 print(i, j) # Prints spaceship type `i` and its feature `j` 7 j += 1 # Increase `j` by 1 8 print('End', i) # End of each spaceship type iteration 9 i += 1
The code prints:
Markdown1Start 1 21 1 31 2 41 3 5End 1 6Start 2 72 1 82 2 92 3 10End 2 11Start 3 123 1 133 2 143 3 15End 3
Nested loops are not necessarily limited by just two-level nesting. In fact, there can be any number of nested loops. Here is a simple example with three nested loops:
Python1for x in range(1, 4): # Galaxies 2 for y in range(1, 4): # Stars 3 for z in range(1, 4): # Moons 4 print('Galaxy:', x, 'Star:', y, 'Moon:', z) # Prints the galaxy, its star, and the moon
While analyzing three-dimensional data can be more informative, it's crucial to ensure the computational effort doesn't exceed the capacity of your hardware. But don't worry if that doesn't make too much sense right now, you'll learn more about it in the next courses!
Congratulations, astronaut! You've successfully journeyed through nested loops. We've navigated the landscape of nested loops, their syntax, and practical, celestial-themed examples. Up next are some practice exercises! Buckle up for a thrilling ride through the nested loops cosmos!