When do we use a for-loop and when a while-loop?

In general, a for-loop is used when the number of iterations is predefined, and a while-loop is used when the number of iterations is not known in advance. When a for-loop is used, a while-loop can also be used. In this case, we usually prefer using a for-loop, due to the simplicity of its syntax. One example where both types can be used is shown below.

Write a short program to print the numbers 1 to 10.
For-loop:
for i in range(1,10): print(i) While-loop:
i = 1 while (i <= 10): print(i) i += 1
However, this does not work the other way around. Here is an example, where only a while-loop can be used.

Write a short program to calculate the sum of the numbers that the user enters. The program terminates when the user enters a negative number.
While-loop:
message = “Please enter a number!” x = input(message) sum = 0 while(x >= 0): sum += x x = input(message)
There is no way that the above example can be implemented using a for-loop as we don’t know how many numbers the user will enter before entering a negative number. On top of that, every time that the program is executed a different amount of numbers will be entered depending on the situation.

EM
Answered by EIina M. Python tutor

1766 Views

See similar Python Mentoring tutors

Related Python Mentoring answers

All answers ▸

Write a recursive function that takes any integer n and prints the nth Fibonacci number.


What is the difference between a for loop and a while loop?


Define a function that takes in the age of the user and adds it to an output sentence such as "You are ..... old".


Write a program that takes a value x and then outputs x Fibonnaci numbers. E.g. if x=6 output would be 1 1 2 3 5 8


We're here to help

contact us iconContact ustelephone icon+44 (0) 203 773 6020
Facebook logoInstagram logoLinkedIn logo

MyTutor is part of the IXL family of brands:

© 2025 by IXL Learning