O uso de loops do tipo “for” e loops do tipo “while” em Python permite que você automatize e repita tarefas de maneira eficiente.
No entanto, pode acontecer de um fator externo influenciar a maneira como seu programa é executado. Quando isso ocorre, é desejável que seu programa saia de um loop completamente, ignore parte de um loop antes de continuar, ou ignore aquele fator externo. É possível realizar essas ações com as instruções break
, continue
e pass
.
Em Python, a instrução break
oferece a possibilidade de sair de um loop quando uma condição externa é acionada. A instrução break
será colocada dentro do bloco de código abaixo da sua instrução de loop, geralmente após uma instrução condicional if
.
Vamos ver um exemplo que usa a instrução break
em um loop do tipo "for"
:
number = 0
for number in range(10):
if number == 5:
break # break here
print('Number is ' + str(number))
print('Out of loop')
Neste pequeno programa, o number
da variável é inicializado em 0. Em seguida, uma instrução for
constrói o loop, desde que o number
da variável seja menor que 10.
Dentro do loop for
, há uma instrução if
que apresenta a condição que se o number
da variável for equivalente ao número inteiro 5, então o loop será quebrado.
Dentro do loop também há uma instrução print()
que será executada com cada iteração do loop for
até que o loop seja quebrado, uma vez que está localizada após a instrução break
.
Para saber quando estamos fora do loop, incluímos uma instrução final print()
fora do loop for
.
Quando executarmos esse código, nosso resultado será o seguinte:
OutputNumber is 0
Number is 1
Number is 2
Number is 3
Number is 4
Out of loop
Isso mostra que assim que o number
é avaliado como equivalente a 5, o loop é interrompido, uma vez que o programa é orientado a fazer isso com a instrução break
.
A instrução break
faz com que um programa seja interrompido para fora de um loop.
A instrução continue
dá a opção de ignorar a parte de um loop onde uma condição externa é acionada, mas continuar e completar o resto do loop. Ou seja, a iteração atual do loop será interrompida, mas o programa retornará ao topo do loop.
A instrução continue
ficará dentro do bloco de código abaixo da instrução de loop, geralmente após uma instrução condicional if
.
Usando o mesmo programa de loop for
que na seção anterior da Instrução break, usaremos uma instrução continue
, em vez de uma instrução break
:
number = 0
for number in range(10):
if number == 5:
continue # continue here
print('Number is ' + str(number))
print('Out of loop')
A diferença entre usar a instrução continue
, em vez de uma instrução break
, é que o nosso código continuará apesar da interrupção quando a variável number
for avaliada como equivalente a 5. Vamos ver nosso resultado:
OutputNumber is 0
Number is 1
Number is 2
Number is 3
Number is 4
Number is 6
Number is 7
Number is 8
Number is 9
Out of loop
Aqui, Number is 5
nunca ocorre no resultado, mas o loop continua após esse ponto e imprime linhas para os números 6-10 antes de ser finalizado.
Você pode usar a instrução continue
para evitar um código condicional extremamente aninhado, ou para otimizar um loop, eliminando casos que ocorram com frequência e que você gostaria de rejeitar.
A instrução continue
faz com que um programa pule certos fatores que surjam dentro de um loop, mas depois continuem pelo restante do loop.
Quando uma condição externa é acionada, a instrução pass
permite lidar com a condição sem que o loop seja impactado; todo o código continuará sendo lido a menos que um break
ou outra instrução ocorra.
Assim como ocorre com outras instruções, a instrução pass
ficará dentro do bloco de código abaixo da instrução de loop, normalmente após uma instrução condicional if
.
Usando o mesmo bloco de código anterior, vamos substituir a instrução break
ou continue
por uma instrução pass
:
number = 0
for number in range(10):
if number == 5:
pass # pass here
print('Number is ' + str(number))
print('Out of loop')
A instrução pass
que ocorre após a instrução condicional if
está dizendo ao programa para continuar executando o loop e ignorar o fato de que a variável number
é avaliada como equivalente a 5 durante uma das iterações.
Vamos executar o programa e verificar o resultado:
OutputNumber is 0
Number is 1
Number is 2
Number is 3
Number is 4
Number is 5
Number is 6
Number is 7
Number is 8
Number is 9
Out of loop
Ao usar a instrução pass
neste programa, notamos que o programa é executado exatamente como seria se não houvesse nenhuma instrução condicional no programa. A instrução pass
diz ao programa para desconsiderar essa condição e continuar executando o programa como sempre.
A instrução pass
pode criar classes mínimas, ou agir como um espaço reservado enquanto estamos trabalhando em novos códigos e pensando em um nível algorítmico antes de construir detalhes.
As instruções break
, continue
e pass
em Python permitem que você use loops for
e while
com maior efetividade em seu código.
Para trabalhar mais com as instruções break
e pass
, siga nosso tutorial de projeto “Como criar um Twitterbot com Python 3 e a biblioteca Tweepy.”
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Sign up for Infrastructure as a Newsletter.
Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
This comment has been deleted
This comment has been deleted
This comment has been deleted
otimo artigo, sou super iniciante em pytho e me ajudou muito