Article Outline
Python language allows loop embedded inside another. A loop repeats one or more lines of code.
In programming loops are usually for loops. If a loop is inside another loop, this is called a nested loop. You can make nested loops with a while loop.
Python for loop nested syntax:
for iterating_var in sequence:
for iterating_var in sequence:
statements (s)
statements (s)
Python while loop nested syntax:
while expression:
while expression:
statement (s)
statement (s)
You can be embedded in a loop inside the loop body, such as a while loop embedded in the for loop, and vice versa, you can embed in a for loop in a while loop.
Example
The following example uses a prime number between 2 and 100 nested loop output:
i = 2
while (i <100):
j = 2
while (j <= (i / j)):
if not (i% j): break
j = j + 1
if (j > (i / j)):
print(i, "is a prime number.")
i = i + 1
print("Bye bye!")
Examples of the above output:
2 is a prime number
3 is a prime number
5 is a prime number
7 is a prime number
11 is a prime number
13 is a prime number
17 is a prime number
19 is a prime number
23 is a prime number
29 is a prime number
31 is a prime number
37 is a prime number
41 is a prime number
43 is a prime number
47 is a prime number
53 is a prime number
59 is a prime number
61 is a prime number
67 is a prime number
71 is a prime number
73 is a prime number
79 is a prime number
83 is a prime number
89 is a prime number
97 is a prime number
Bye bye!
More examples
Example: using nested loop to obtain a prime number less than 100
num = [];
i = 2
for i in range (2,100):
j = 2
for j in range(2, i):
if (i% j == 0):
break
else:
num.append(i)
print (num)
Example 2: nested loop to draw a pyramid
i = 1
# J = 1
while i <= 9:
if i <= 5:
print ("*" * i)
elif i <= 9:
j = i-2 * (i-5)
print ("*" * j)
i += 1
else:
print ("")
This outputs a sideways pyramid:
*
**
***
****
*****
****
***
**
*