Comando for

Vários problemas envolvendo listas requerem percorrer (varrer) todos os elementos da lista, um a um, do início até o fim. Nesses casos, podemos utilizar o comando for:

Activity: CodeLens 1 (exemplo_percorrer_lista_com_for_elem)

Para usar o comando for, você precisa definir uma variável que vai receber o valor de um elemento da lista a cada iteração. Nesse exemplo, a variável elemento recebe o valor de cada elemento da lista primos, ou seja, primeiro o valor 2, depois 3, 5, e assim por diante, até 13. A repetição termina quando o último elemento da lista primos for utilizado.

Observe também que a varredura da lista pode ser feita usando o comando while. A sequência de índices válidos é gerada variando a variável i de 0 até len(primos).

Muitas vezes é mais conveniente varrer uma lista usando uma variável que assume valores dentro do intervalo dos índices válidos. Com isso, temos mais poder e flexibilidade no acesso aos elementos da lista, como por exemplo, varrer a lista da direita para a esquerda, ou pegar apenas os elementos de índice par.

Nesses casos também, quando queremos ter controle sobre os índices, é muito comum utilizar o comando for em conjunto com a função range(). Basicamente, devemos chamar a função range() para que ela “devolva uma lista” contendo os valores dos índices que queremos utilizar.

A função range() recebe 3 parâmetros: início, fim e passo, que definem a sequência de números a ser criada. Modifique o trecho de programa abaixo para ver como a função range se comporta em conjunto com o for:

Observe que, como na definição de intervalos em fatias de lista, o intervalo de números cobertos pela função range() é fechado no início e aberto no fim.

Quando o passo desejado é 1 (um), o valor não precisa ser passado a função range(), como abaixo:

Para facilitar mais ainda a varredura de listas, quando o início desejado é 0 (zero) e o passo 1 (um), você pode definir apenas o fim, como:

Nesse exemplo, usando a função len() o final do intervalo a ser gerado pela função range(). Para saber mais sobre essa função, consulte a documentação da função range().

Para verificar se você entendeu como funciona a função range(), modifique o inicio, fim e passo no trecho de programa abaixo para varrer a lista de forma reversa, ou seja, da direita para a esquerda.

Você já fez das atividades dessa página