How We Can Execute a Code Again Acording to User Choice Yes and No in Python

Python While Loop Tutorial – While True Syntax Examples and Infinite Loops

Welcome! If you want to acquire how to work with while loops in Python, and then this article is for you.

While loops are very powerful programming structures that you tin can utilise in your programs to echo a sequence of statements.

In this article, yous will learn:

  • What while loops are.
  • What they are used for.
  • When they should be used.
  • How they piece of work behind the scenes.
  • How to write a while loop in Python.
  • What infinite loops are and how to interrupt them.
  • What while Truthful is used for and its general syntax.
  • How to use a interruption argument to stop a while loop.

You volition learn how while loops piece of work behind the scenes with examples, tables, and diagrams.

Are you fix? Let's begin. 🔅

🔹 Purpose and Use Cases for While Loops

Let'south start with the purpose of while loops. What are they used for?

They are used to repeat a sequence of statements an unknown number of times. This blazon of loop runs while a given condition is True and it only stops when the status becomes False.

When we write a while loop, nosotros don't explicitly ascertain how many iterations volition be completed, we simply write the condition that has to be True to proceed the procedure and False to stop information technology.

💡 Tip: if the while loop condition never evaluates to False, then nosotros will have an infinite loop, which is a loop that never stops (in theory) without external intervention.

These are some examples of real utilize cases of while loops:

  • User Input: When we inquire for user input, we demand to check if the value entered is valid. We can't perhaps know in advance how many times the user will enter an invalid input before the program can proceed. Therefore, a while loop would exist perfect for this scenario.
  • Search: searching for an chemical element in a information structure is some other perfect apply example for a while loop because we can't know in advance how many iterations will be needed to find the target value. For example, the Binary Search algorithm can exist implemented using a while loop.
  • Games: In a game, a while loop could be used to proceed the main logic of the game running until the histrion loses or the game ends. We tin't know in advance when this will happen, so this is another perfect scenario for a while loop.

🔸 How While Loops Piece of work

Now that you know what while loops are used for, permit'southward run across their main logic and how they piece of work behind the scenes. Here nosotros have a diagram:

image-24
While Loop

Let's break this down in more detail:

  • The procedure starts when a while loop is constitute during the execution of the plan.
  • The status is evaluated to cheque if it'southward True or False.
  • If the condition is True, the statements that belong to the loop are executed.
  • The while loop condition is checked again.
  • If the condition evaluates to True again, the sequence of statements runs again and the procedure is repeated.
  • When the condition evaluates to Fake, the loop stops and the program continues beyond the loop.

Ane of the nearly important characteristics of while loops is that the variables used in the loop condition are not updated automatically. We take to update their values explicitly with our code to make sure that the loop volition eventually finish when the condition evaluates to Imitation.

🔹 General Syntax of While Loops

Slap-up. At present you know how while loops work, and so let's dive into the code and see how you can write a while loop in Python. This is the basic syntax:

image-105
While Loop (Syntax)

These are the master elements (in order):

  • The while keyword (followed by a space).
  • A condition to determine if the loop will go on running or not based on its truth value (Truthful or False ).
  • A colon (:) at the stop of the first line.
  • The sequence of statements that will be repeated. This block of code is called the "body" of the loop and it has to be indented. If a argument is not indented, it will not exist considered role of the loop (delight see the diagram beneath).
image-7

💡 Tip: The Python way guide (PEP eight) recommends using 4 spaces per indentation level. Tabs should simply be used to remain consequent with code that is already indented with tabs.

🔸 Examples of While Loops

Now that y'all know how while loops piece of work and how to write them in Python, let's see how they piece of work behind the scenes with some examples.

How a Basic While Loop Works

Here we have a basic while loop that prints the value of i while i is less than 8 (i < 8):

                i = 4  while i < eight:     print(i)     i += 1              

If nosotros run the code, we see this output:

                iv 5 6 7              

Permit's see what happens backside the scenes when the code runs:

image-16
  • Iteration 1: initially, the value of i is 4, so the status i < 8 evaluates to True and the loop starts to run. The value of i is printed (4) and this value is incremented by ane. The loop starts once again.
  • Iteration 2: now the value of i is 5, so the condition i < 8 evaluates to True. The body of the loop runs, the value of i is printed (5) and this value i is incremented by 1. The loop starts over again.
  • Iterations iii and 4: The same process is repeated for the 3rd and 4th iterations, so the integers 6 and 7 are printed.
  • Before starting the fifth iteration, the value of i is 8. Now the while loop condition i < eight evaluates to False and the loop stops immediately.

💡 Tip: If the while loop condition is False before starting the offset iteration, the while loop will not even start running.

User Input Using a While Loop

At present let'southward see an case of a while loop in a program that takes user input. We will the input() function to ask the user to enter an integer and that integer will only be appended to list if it'southward even.

This is the code:

                # Ascertain the list nums = []  # The loop will run while the length of the # list nums is less than four while len(nums) < 4:     # Ask for user input and store it in a variable as an integer.     user_input = int(input("Enter an integer: "))     # If the input is an even number, add together it to the listing     if user_input % 2 == 0:         nums.suspend(user_input)              

The loop condition is len(nums) < 4, and so the loop will run while the length of the list nums is strictly less than 4.

Let'due south analyze this programme line by line:

  • We first by defining an empty list and assigning it to a variable called nums.
                nums = []              
  • And then, we ascertain a while loop that will run while len(nums) < 4.
                while len(nums) < 4:              
  • Nosotros inquire for user input with the input() function and store it in the user_input variable.
                user_input = int(input("Enter an integer: "))              

💡 Tip: We need to convert (bandage) the value entered by the user to an integer using the int() function before assigning it to the variable considering the input() part returns a string (source).

  • We check if this value is fifty-fifty or odd.
                if user_input % 2 == 0:              
  • If it's even, we append it to the nums list.
                nums.append(user_input)              
  • Else, if it's odd, the loop starts again and the status is checked to determine if the loop should go on or not.

If we run this code with custom user input, we get the following output:

                Enter an integer: 3 Enter an integer: four     Enter an integer: 2     Enter an integer: i Enter an integer: 7 Enter an integer: 6     Enter an integer: 3 Enter an integer: iv                              

This table summarizes what happens behind the scenes when the code runs:

image-86

💡 Tip: The initial value of len(nums) is 0 because the list is initially empty. The last column of the table shows the length of the list at the end of the current iteration. This value is used to check the status before the side by side iteration starts.

Every bit you can see in the table, the user enters even integers in the second, third, sixth, and 8 iterations and these values are appended to the nums list.

Before a "9th" iteration starts, the condition is checked again only at present it evaluates to False because the nums list has four elements (length 4), then the loop stops.

If we bank check the value of the nums listing when the process has been completed, we encounter this:

                >>> nums [4, two, 6, 4]              

Exactly what we expected, the while loop stopped when the condition len(nums) < 4 evaluated to Simulated.

Now you know how while loops work behind the scenes and you've seen some applied examples, then permit's swoop into a central element of while loops: the condition.

🔹 Tips for the Condition in While Loops

Before you first working with while loops, you should know that the loop status plays a cardinal role in the functionality and output of a while loop.

image-25

You must be very careful with the comparison operator that you cull because this is a very common source of bugs.

For example, common errors include:

  • Using < (less than) instead of <= (less than or equal to) (or vice versa).
  • Using > (greater than) instead of >= (greater than or equal to) (or vice versa).

This can touch the number of iterations of the loop and even its output.

Let's see an case:

If we write this while loop with the condition i < 9:

                i = vi  while i < 9:     print(i)     i += ane                              

We see this output when the lawmaking runs:

                six 7 viii              

The loop completes three iterations and it stops when i is equal to ix.

This table illustrates what happens backside the scenes when the code runs:

image-20
  • Earlier the first iteration of the loop, the value of i is 6, then the condition i < 9 is True and the loop starts running. The value of i is printed and and then it is incremented by 1.
  • In the 2nd iteration of the loop, the value of i is seven, and then the condition i < nine is Truthful. The torso of the loop runs, the value of i is printed, so information technology is incremented by i.
  • In the third iteration of the loop, the value of i is 8, so the condition i < 9 is True. The body of the loop runs, the value of i is printed, and then it is incremented by 1.
  • The condition is checked again earlier a fourth iteration starts, but now the value of i is 9, then i < 9 is Faux and the loop stops.

In this instance, we used < as the comparing operator in the status, but what do you retrieve volition happen if we use <= instead?

                i = 6  while i <= nine:     print(i)     i += ane              

We run into this output:

                half-dozen 7 8 9              

The loop completes ane more than iteration because at present nosotros are using the "less than or equal to" operator <= , then the condition is still True when i is equal to 9.

This tabular array illustrates what happens backside the scenes:

image-21

Four iterations are completed. The condition is checked again earlier starting a "fifth" iteration. At this point, the value of i is 10, then the condition i <= 9 is Fake and the loop stops.

🔸 Infinite While Loops

Now you know how while loops piece of work, but what do you remember will happen if the while loop condition never evaluates to False?

image-109

What are Infinite While Loops?

Retrieve that while loops don't update variables automatically (nosotros are in charge of doing that explicitly with our lawmaking). So in that location is no guarantee that the loop volition stop unless nosotros write the necessary code to make the condition False at some indicate during the execution of the loop.

If we don't practise this and the status always evaluates to Truthful, then we will accept an infinite loop, which is a while loop that runs indefinitely (in theory).

Infinite loops are typically the result of a problems, but they tin can also be caused intentionally when we desire to repeat a sequence of statements indefinitely until a pause argument is institute.

Let's run across these ii types of infinite loops in the examples below.

💡 Tip: A problems is an error in the plan that causes incorrect or unexpected results.

Example of Space Loop

This is an example of an unintentional infinite loop caused by a bug in the program:

                # Define a variable i = five  # Run this loop while i is less than fifteen while i < 15:     # Impress a message     print("Howdy, World!")                              

Clarify this code for a moment.

Don't yous notice something missing in the trunk of the loop?

That's right!

The value of the variable i is never updated (information technology's always 5). Therefore, the condition i < fifteen is e'er True and the loop never stops.

If we run this lawmaking, the output will be an "infinite" sequence of Hello, Globe! messages considering the trunk of the loop print("Hello, World!") will run indefinitely.

                Hello, World! Hello, Globe! Hi, World! Hello, Globe! Hello, World! Hello, World! Hello, Earth! Howdy, World! How-do-you-do, Earth! Hello, Earth! Hullo, World! Hello, Earth! How-do-you-do, World! Howdy, Earth! Howdy, World! Hello, World! Hello, World! Hello, World! . . . # Continues indefinitely              

To finish the program, we will need to interrupt the loop manually past pressing CTRL + C.

When we do, nosotros volition encounter a KeyboardInterrupt error like to this ane:

image-116

To gear up this loop, we volition need to update the value of i in the trunk of the loop to make certain that the condition i < 15 will eventually evaluate to False.

This is one possible solution, incrementing the value of i by 2 on every iteration:

                i = 5  while i < 15:     print("Hello, World!")     # Update the value of i     i += 2              

Great. Now y'all know how to fix space loops acquired by a bug. You just demand to write code to guarantee that the condition will eventually evaluate to Fake.

Let'south showtime diving into intentional space loops and how they work.

🔹 How to Make an Infinite Loop with While True

We can generate an infinite loop intentionally using while Truthful. In this case, the loop will run indefinitely until the process is stopped by external intervention (CTRL + C) or when a break argument is found (you will learn more virtually interruption in just a moment).

This is the basic syntax:

image-35

Instead of writing a status later the while keyword, nosotros just write the truth value directly to indicate that the status volition always be True.

Here we accept an example:

                >>> while Truthful: 	print(0)  	 0 0 0 0 0 0 0 0 0 0 0 0 0 Traceback (most contempo telephone call last):   File "<pyshell#2>", line 2, in <module>     impress(0) KeyboardInterrupt              

The loop runs until CTRL + C is pressed, but Python also has a break statement that we tin can use directly in our lawmaking to end this type of loop.

The break statement

This statement is used to end a loop immediately. You should think of it every bit a ruddy "stop sign" that you can utilize in your code to have more control over the beliefs of the loop.

image-110

Co-ordinate to the Python Documentation:

The break statement, like in C, breaks out of the innermost enclosing for or while loop.

This diagram illustrates the basic logic of the intermission argument:

image-111
The interruption statement

This is the basic logic of the break statement:

  • The while loop starts only if the status evaluates to True.
  • If a break statement is found at whatever bespeak during the execution of the loop, the loop stops immediately.
  • Else, if break is not institute, the loop continues its normal execution and information technology stops when the condition evaluates to Imitation.

We tin can utilise break to finish a while loop when a status is met at a particular point of its execution, and so you will typically find information technology within a conditional statement, similar this:

                while True:     # Code     if <status>:     	break     # Code              

This stops the loop immediately if the condition is True.

💡 Tip: Yous can (in theory) write a break statement anywhere in the body of the loop. It doesn't necessarily take to exist part of a conditional, but we commonly utilize information technology to finish the loop when a given condition is True.

Here nosotros have an example of break in a while Truthful loop:

image-41

Let's meet it in more detail:

The first line defines a while True loop that will run indefinitely until a pause argument is found (or until it is interrupted with CTRL + C).

                while True:              

The second line asks for user input. This input is converted to an integer and assigned to the variable user_input.

                user_input = int(input("Enter an integer: "))              

The third line checks if the input is odd.

                if user_input % 2 != 0:              

If information technology is, the bulletin This number is odd is printed and the break statement stops the loop immediately.

                print("This number of odd") break              

Else, if the input is fifty-fifty , the message This number is fifty-fifty is printed and the loop starts over again.

                print("This number is even")              

The loop will run indefinitely until an odd integer is entered because that is the just fashion in which the break statement will exist found.

Hither we have an example with custom user input:

                Enter an integer: 4 This number is fifty-fifty Enter an integer: 6 This number is even Enter an integer: 8 This number is even Enter an integer: three This number is odd >>>                              

🔸 In Summary

  • While loops are programming structures used to repeat a sequence of statements while a condition is Truthful. They cease when the condition evaluates to False.
  • When yous write a while loop, you need to make the necessary updates in your code to make sure that the loop will eventually stop.
  • An infinite loop is a loop that runs indefinitely and it only stops with external intervention or when a break statement is establish.
  • You tin terminate an space loop with CTRL + C.
  • Y'all can generate an infinite loop intentionally with while True.
  • The suspension statement tin can be used to stop a while loop immediately.

I really hope you liked my article and found it helpful. At present you know how to work with While Loops in Python.

Follow me on Twitter @EstefaniaCassN and if y'all want to learn more about this topic, check out my online course Python Loops and Looping Techniques: Beginner to Avant-garde.



Larn to code for free. freeCodeCamp's open source curriculum has helped more than than forty,000 people get jobs as developers. Get started

autreydunneve.blogspot.com

Source: https://www.freecodecamp.org/news/python-while-loop-tutorial/

0 Response to "How We Can Execute a Code Again Acording to User Choice Yes and No in Python"

Enregistrer un commentaire

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel