Python 3 - instruções while Loop

UMA while A instrução loop na linguagem de programação Python executa repetidamente uma instrução de destino, desde que uma determinada condição seja verdadeira.

Sintaxe

A sintaxe de um while loop na linguagem de programação Python é -

while expression:
   statement(s)

Aqui, statement(s)pode ser uma única declaração ou um bloco de declarações com indentação uniforme. oconditionpode ser qualquer expressão e verdadeiro é qualquer valor diferente de zero. O loop itera enquanto a condição for verdadeira.

Quando a condição se torna falsa, o controle do programa passa para a linha imediatamente após o loop.

Em Python, todas as instruções recuadas pelo mesmo número de espaços de caracteres após uma construção de programação são consideradas parte de um único bloco de código. Python usa recuo como seu método de agrupamento de instruções.

Diagrama de fluxo

Aqui, um ponto-chave do loop while é que ele pode nunca ser executado. Quando a condição é testada e o resultado é falso, o corpo do loop será ignorado e a primeira instrução após o loop while será executada.

Exemplo

#!/usr/bin/python3

count = 0
while (count < 9):
   print ('The count is:', count)
   count = count + 1

print ("Good bye!")

Resultado

Quando o código acima é executado, ele produz o seguinte resultado -

The count is: 0
The count is: 1
The count is: 2
The count is: 3
The count is: 4
The count is: 5
The count is: 6
The count is: 7
The count is: 8
Good bye!

O bloco aqui, que consiste nas instruções de impressão e incremento, é executado repetidamente até que a contagem não seja mais menor que 9. Com cada iteração, o valor atual da contagem do índice é exibido e então aumentado em 1.

The Infinite Loop

Um loop torna-se loop infinito se uma condição nunca se torna FALSE. Você deve ter cuidado ao usar os loops while devido à possibilidade de que essa condição nunca seja resolvida para um valor FALSE. Isso resulta em um loop que nunca termina. Esse loop é chamado de loop infinito.

Um loop infinito pode ser útil na programação cliente / servidor, em que o servidor precisa ser executado continuamente para que os programas cliente possam se comunicar com ele como e quando necessário.

Exemplo

#!/usr/bin/python3

var = 1
while var == 1 :  # This constructs an infinite loop
   num = int(input("Enter a number  :"))
   print ("You entered: ", num)

print ("Good bye!")

Resultado

Quando o código acima é executado, ele produz o seguinte resultado -

Enter a number  :20
You entered:  20
Enter a number  :29
You entered:  29
Enter a number  :3
You entered:  3
Enter a number  :11
You entered:  11
Enter a number  :22
You entered:  22
Enter a number  :Traceback (most recent call last):
   File "examples\test.py", line 5, in 
      
        num = int(input("Enter a number :")) KeyboardInterrupt 
      

O exemplo acima segue em um loop infinito e você precisa usar CTRL + C para sair do programa.

Usando instrução else com loops

Python suporta ter um else instrução associada a uma instrução de loop.

  • Se o else declaração é usada com um for loop, o else instrução é executada quando o loop esgotar a iteração da lista.

  • Se o else declaração é usada com um while loop, o else declaração é executada quando a condição se torna falsa.

O exemplo a seguir ilustra a combinação de uma instrução else com uma instrução while que imprime um número desde que seja menor que 5, caso contrário, a instrução else será executada.

Exemplo

#!/usr/bin/python3

count = 0
while count < 5:
   print (count, " is  less than 5")
   count = count + 1
else:
   print (count, " is not less than 5")

Resultado

Quando o código acima é executado, ele produz o seguinte resultado -

0 is less than 5
1 is less than 5
2 is less than 5
3 is less than 5
4 is less than 5
5 is not less than 5

Suítes de declaração única

Semelhante ao if sintaxe de instrução, se o seu while cláusula consiste em apenas uma única instrução, ela pode ser colocada na mesma linha do cabeçalho while.

Exemplo

Aqui está a sintaxe e o exemplo de um one-line while cláusula -

#!/usr/bin/python3

flag = 1
while (flag): print ('Given flag is really true!')
print ("Good bye!")

O exemplo acima entra em um loop infinito e você precisa pressionar as teclas CTRL + C para sair.