[Curso de Python] Estrutura While: Continue e Break
por
em 18-01-2010 às 11:27 (12986 Visualizações)
Antes de prosseguir leia os artigos anteriores aqui
Bom dia a todos! Finalmente, depois de uma longa pausa, estamos de voltar com o funcionamento normal desse blog! Peço desculpas a todos pelo atraso das postagens, garanto que não foi preguiça ou desinteresse, foram "motivos de força maior"!
Deixando o papo de lado, hoje vamos conhecer duas palavra que vai ajudar muito a estruturar o fluxo dos programas. Essas palavras são continue e break.
Continue
A palavra continue tem uma funcionalidade muito importante na elaboração de loops. Ao 'resumir' uma iteração do loop ela pode evitar que diversas operações sejam executadas desnecessariamente.
Um exemplo prático que exemplifica esse funcionamento:
Execução:Código :x = 0 while x <= 10: x = x + 1 if x == 5: print 'nao vou imprimir o 5' continue print 'x =',x
Como dito, o continue resume a iteração em que x é igual a 5. Quando o interpretador python 'encontra' o continue ele volta para o início do while sem executar as linhas que estão abaixo.Código :x = 1 x = 2 x = 3 x = 4 nao vou imprimir o 5 x = 6 x = 7 x = 8 x = 9 x = 10 x = 11
Muitos discordam da utilidade do continue pois dizem que ele pode ser substituído por um simples if, como no exemplo abaixo, que gera o mesmo funcionamento do último exemplo:
O código acima gera a seguinte saída:Código :x = 0 while x<= 10: x = x + 1 if x != 5: print 'x =',x else: print 'Nao vou imprimir o 5'
Eu defendo o uso do continue pois, muitas vezes é necessário evitar que sejam executados códigos que venham depois dos if's, além de tornar o código mais compreensível.Código :x = 1 x = 2 x = 3 x = 4 Nao vou imprimir o 5 x = 6 x = 7 x = 8 x = 9 x = 10 x = 11
Break
Eu considero que o break simplesmente não tem substituto. Em contraste com o continue, que resume uma iteração do loop, o break é responsável por 'quebrar' o loop atual:
No exemplo acima, não é utilizada nenhuma condição dentro do while, teoricamente este seria um loop infinito. Atenção, este tipo de loop só deve ser utilizado para fins didáticos, isso é um pouco perigoso e sempre deve ser evitado.Código :x = 0 while True: print 'x =',x x = x + 1 if x == 10: print 'Saindo...' break
Para evitar que esse loop fique eternamente incrementando o valor de x, foi utilizado uma condição para x igual a 10. Quando essa condição for satisfeita é impresso a string 'Saíndo...' e depois é executado o break, que automaticamente sai do do loop while sem executar nenhum outra linha. Segue a saída gerada pelo exemplo acima
No próximo post veremos como aliar o continue, o break e o else na estrutura while para obter resultados que antes exigiriam um código mais extenso e com mais variáveis.Código :x = 0 x = 1 x = 2 x = 3 x = 4 x = 5 x = 6 x = 7 x = 8 x = 9 Saindo...
Até mais...
Comentários
+ Enviar Comentário