O loop for em Python é uma função de iteração. Se você tem um objeto de sequência como uma lista, você pode usar o loop for para iterar sobre os itens contidos dentro da lista.
A funcionalidade do loop for não é muito diferente do que você vê em várias outras linguagens de programação.
Neste artigo, vamos explorar o loop for em Python em detalhes e aprender a iterar sobre diferentes sequências, incluindo listas, tuplas e mais. Além disso, vamos aprender a controlar o fluxo do loop usando as instruções break e continue.
Quando usar o loop for
Sempre que precisar repetir um bloco de código um número fixo de vezes. Se você não souber quantas vezes ele deve ser repetido, use uma instrução “while loop” em vez disso.
Sintaxe do loop for em Python
A sintaxe básica do loop for em Python se parece com algo semelhante ao mencionado abaixo.
Sintaxe do loop for em Python em Detalhes
- A primeira palavra da declaração começa com a palavra-chave “for” que significa o início do loop for.
- Em seguida, temos a variável do iterador que itera sobre a sequência e pode ser usada dentro do loop para executar várias funções
- O próximo é a palavra-chave “in” em Python que indica à variável do iterador para iterar sobre elementos dentro da sequência
- E finalmente, temos a variável de sequência que pode ser uma lista, uma tupla, ou qualquer outro tipo de iterador.
- A parte das declarações do loop é onde você pode manipular a variável do iterador e executar várias funções
Imprimir letras individuais de uma string usando o loop for
String em Python é uma sequência de caracteres. Se em qualquer uma de suas aplicações de programação, você precisar percorrer os caracteres de uma string individualmente, você pode usar o loop for aqui.
Aqui está como isso funcionaria para você.
Saída:
A razão pela qual este loop funciona é porque o Python considera uma “string” como uma sequência de caracteres em vez de olhar para a string como um todo.
Usando o loop for para iterar sobre uma lista ou tupla Python
Listas e Tuplas são objetos iteráveis. Vamos ver como podemos iterar sobre os elementos dentro desses objetos agora.
Saída:
Agora, vamos avançar e trabalhar em iterar sobre os elementos de uma tupla aqui.
Aninhando loops for em Python
Quando temos um loop for dentro de outro loop for, isso é chamado de loop for aninhado. Existem várias aplicações de um loop for aninhado.
Considere o exemplo da lista acima. O loop for imprime palavras individuais da lista. Mas e se quisermos imprimir os caracteres individuais de cada uma das palavras dentro da lista?
É aqui que um loop for aninhado funciona melhor. O primeiro loop (loop pai) passará pelas palavras uma por uma. O segundo loop (loop filho) percorrerá os caracteres de cada uma das palavras.
Output
A nested loop is structurally similar to nested if
statements
Python for loop com a função range()
O range do Python é uma das funções integradas. Quando você deseja que o loop for seja executado por um número específico de vezes, ou precisa especificar um intervalo de objetos para imprimir, a função range funciona muito bem.
Ao trabalhar com range()
, você pode passar entre 1 e 3 argumentos inteiros para ele:
start
indica o valor inteiro no qual a sequência começa, se isso não estiver incluído, entãostart
começa em 0stop
é sempre necessário e é o inteiro até o qual é contado, mas não incluídostep
define quanto aumentar (ou diminuir no caso de números negativos) na próxima iteração, se isso for omitido, entãostep
padrão é 1
Considere o seguinte exemplo onde eu quero imprimir os números 1, 2 e 3:
A função range também aceita outro parâmetro além do início e do fim. Este é o parâmetro step. Ele diz à função range quantos números pular entre cada contagem.
No exemplo abaixo, usei o número 3 como o passo e você pode ver os números de saída são o número anterior + 3.
Também podemos usar um valor negativo para nosso argumento step
para iterar para trás, mas teremos que ajustar nossos argumentos start
e stop
de acordo:
Aqui, 100 é o valor start
, 0 é o valor stop
, e -10
é o range, então o loop começa em 100 e termina em 0, diminuindo 10 a cada iteração. Isso ocorre na saída:
Output100
90
80
70
60
50
40
30
20
10
Ao programar em Python, os loops for
frequentemente fazem uso do tipo de sequência range()
como seus parâmetros para iteração.
A declaração break com o loop for
A declaração break é usada para sair prematuramente do loop for. É usada para interromper o loop for quando uma condição específica é atendida.
Vamos supor que temos uma lista de números e queremos verificar se um número está presente ou não. Podemos iterar sobre a lista de números e, se o número for encontrado, sair do loop porque não precisamos continuar iterando sobre os elementos restantes.
Nesse caso, usaremos a condição if else do Python juntamente com nosso loop for.
A declaração continue com o loop for
Podemos usar declarações continue dentro de um loop for para pular a execução do corpo do loop for para uma condição específica.
Vamos supor que temos uma lista de números e queremos imprimir a soma dos números positivos. Podemos usar as declarações continue para pular o laço for para números negativos.
Laço for em Python com um bloco else
Podemos usar um bloco else com um laço for em Python. O bloco else é executado apenas quando o laço for não é terminado por uma declaração break.
Vamos supor que temos uma função para imprimir a soma dos números se e somente se todos os números forem pares.
Podemos usar a declaração break para encerrar o laço for se um número ímpar estiver presente. Podemos imprimir a soma na parte else para que seja impressa apenas quando o laço for executado normalmente.
Laços for usando Tipos de Dados Sequenciais
Listas e outros tipos de sequência de dados também podem ser utilizados como parâmetros de iteração em laços for
. Em vez de iterar por meio de um range()
, você pode definir uma lista e iterar por essa lista.
Vamos atribuir uma lista a uma variável e, em seguida, iterar por essa lista:
Neste caso, estamos imprimindo cada item da lista. Embora tenhamos usado a variável shark
, poderíamos ter chamado a variável de qualquer outro nome de variável válido e obteríamos a mesma saída:
Outputhammerhead
great white
dogfish
frilled
bullhead
requiem
A saída acima mostra que o laço for
iterou pela lista e imprimiu cada item da lista por linha.
Listas e outros tipos de dados baseados em sequência, como strings e tuplas, são comuns de usar com laços porque são iteráveis. Você pode combinar esses tipos de dados com range()
para adicionar itens a uma lista, por exemplo:
Output['hammerhead', 'great white', 'dogfish', 'frilled', 'bullhead', 'requiem', 'shark', 'shark', 'shark', 'shark', 'shark', 'shark']
Aqui, adicionamos uma string de marcador de posição 'shark'
para cada item do comprimento da lista sharks
.
Você também pode usar um laço for
para construir uma lista do zero:
Neste exemplo, a lista integers
é inicializada vazia, mas o loop for
popula a lista assim:
Output[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Da mesma forma, podemos iterar através de strings:
OutputS
a
m
m
y
A iteração de tuplas é feita no mesmo formato que a iteração de listas ou strings acima.
Ao iterar através de um dicionário, é importante ter em mente a estrutura chave : valor para garantir que você está chamando o elemento correto do dicionário. Aqui está um exemplo que chama tanto a chave quanto o valor:
Outputname: Sammy
animal: shark
location: ocean
color: blue
Ao usar dicionários com loops for
, a variável de iteração corresponde às chaves do dicionário, e dictionary_variable[iterating_variable]
corresponde aos valores. No caso acima, a variável de iteração key
foi usada para representar a chave, e sammy_shark[key]
foi usada para representar os valores.
Os loops são frequentemente usados para iterar e manipular tipos de dados sequenciais.
Conclusão
O loop for
em Python é muito semelhante a outras linguagens de programação. Podemos usar as instruções break e continue com o loop for
para alterar a execução. No entanto, em Python, também podemos ter um bloco else opcional em um loop for
.
I hope you have gained some interesting ideas from the tutorial above. If you have any questions, let us know in the comments below.
A partir daqui, você pode continuar aprendendo sobre looping lendo tutoriais sobre while loops e declarações de break, continue e pass.
Para trabalhar com for
loops em projetos, siga os seguintes tutoriais:
Source:
https://www.digitalocean.com/community/tutorials/how-to-construct-for-loops-in-python-3