Artigo original: Python For Loop - For i in Range Example

Laços são uma das principais estruturas de controle em qualquer linguagem de programação. Em Python, isso não é diferente.

Neste artigo, examinaremos alguns exemplos usando laços for com a função range() do Python.

Laços for em Python

Os laços for repetem uma parte do código por um conjunto de valores.

Conforme discutido na documentação do Python, os laços for funcionam de modo levemente diferente do que ocorre em outras linguagens, como o JavaScript ou o C.

Um laço for define a variável de iteração para cada valor em uma lista, array ou string fornecida e repete o código no corpo do laço for para cada valor da variável de iteração.

No exemplo abaixo, usamos um laço for para imprimir todos os números do nosso array.

# Exemplo de laço for
for i in [1, 2, 3, 4]:
    print(i, end=", ") # imprime: 1, 2, 3, 4,

Também podemos incluir uma lógica mais complexa no corpo do laço for. Neste exemplo, imprimimos o resultado de um cálculo pequeno com base no valor de nossa variável de iteração.

# Exemplo mais complexo
for i in [1, 3, 5, 7, 9]:
    x = i**2 - (i-1)*(i+1)
    print(x, end=", ") # imprime 1, 1, 1, 1, 1, 

Quando os valores no array para o nosso laço for são sequenciais, podemos usar a função range() do Python no lugar de escrever o conteúdo do nosso array.

A função range no Python

A função range() fornece uma sequência de números inteiros baseada nos argumentos da função. Informações adicionais podem ser encontradas na documentação do Python para a função range().

range(parada)
range(início, parada[, passo])

O argumento de início é o primeiro valor no intervalo. Se range() for chamado com apenas um argumento, o Python assume que início = 0.

O argumento de parada é o limite superior do intervalo. É importante observar que o limite superior não é incluído no intervalo.

No exemplo abaixo, temos um intervalo que inicia no valor padrão  0 e inclui números inteiros inferiores a 5.

# Exemplo com um argumento
for i in range(5):
    print(i, end=", ") # imprime: 0, 1, 2, 3, 4, 

Em nosso próximo exemplo, definimos início = -1 e novamente incluímos os números inteiros inferiores a 5.

# Exemplo com dois argumentos
for i in range(-1, 5):
    print(i, end=", ") # imprime: -1, 0, 1, 2, 3, 4, 

O valor opcional passo controla o incremento entre os valores no intervalo. Por padrão, passo = 1.

Em nosso exemplo final, usamos o intervalo de números inteiros de -1 a 5 e definimos que passo = 2.

# Exemplo com três argumentos
for i in range(-1, 5, 2):
    print(i, end=", ") # imprime: -1, 1, 3, 

Resumo

Neste artigo, vimos os laços for em Python e a função range().

Os laços for repetem um bloco de código para todos os valores de uma lista, array, string ou range() (intervalo).

Podemos usar um range() para simplificar a escrita do laço for. O valor de parada de range() deve ser especificado, mas também podemos modificar o valor de início e o valor de passo entre os números inteiros do range().