While loop in python

problem

You’re learning Python and wish to use one of the loop mechanisms; in particular the while-loop. This is a mechanism of the language that allows us to keep repeating one or more actions given a logical condition (boolean expression).

In plain Engilsh we can say “while <expression> do actions”, for example:

While there is no a wall in front of me (expression), keep walking (actions)

SOLUTION

Let us see an example of how we can print numbers from 1 to 10 one at each line.

First we will need to create a variable that will hold the value to print, let’s name it counter. Initially, it will be set to 1 as follows:

while_loop.py
				
					counter = 1
				
			

Then our boolean expression is: “while the number is less than or equals to 10”. More specific that translates to:

while_loop.py
				
					counter <= 10 #boolean expression
				
			

We need now to plug this condition into the while loop as follows:

while_loop.py
				
					while counter <= 10: #if True,execute the following commands
        #commands
				
			

Let’s now put the action, i.e. to print the counter and also to increment it by 1. We need to increment the counter so the condition above falsifies (becomes False). For example:

while_loop.py
				
					counter = counter + 1 #increment by 1
				
			

Then it will repeat. At some point the counter will reach the value 1,2,3,4,5,6,7,8,9,10,11. In this case the condition will evaluate to False and it will stop executing the while loop.

Let’s put it all together so far:

while_loop.py
				
					counter = 1
while counter <= 10:
	print(counter)
	counter = counter + 1
print(“end of loop”) 
				
			
running

In your terminal:

				
					python3 while_loop.py
				
			
output
The output is as follows:
python while loop counter
infinite loop

If we didn’t increment the counter, then the condition counter <= 10 would never return to False resulting to what we call “infinite” loop. A loop that will run forever. There is a way to control a loop from it’s internals.

conclusion

In this post we saw how to use the while-loop mechanism of Python and print a counter that gets incremented by 1.

Share it!

Facebook
Twitter
LinkedIn
Reddit
Picture of Ellion

Ellion

Professional IT consultant, writer, programmer enthusiast interested in all sorts of coding.
Eats all cookies 🍪

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x