One place for hosting & domains

      Como usar as instruções break, continue, e pass ao trabalhar com loops em Python 3


      Introdução

      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.

      Instrução break

      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:

      Output

      Number 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.

      Instrução continue

      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:

      Output

      Number 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.

      Declaração pass

      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:

      Output

      Number 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.

      Conclusão

      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.”



      Source link