24 Capítulo 1
>>> for i in [1, 2, 3]:
pri nt(i)
1
2
3
repita-se
Iterando uma Sequência de Objetos
Dissemos antes que utilizaríamos o loop for do Python aqui. O loop for
é perfeito para controlar o loop quando você sabe de antemão de quantas
iterações precisa. (Quando não sabe, recomendamos o loop while, mas
evitaremos analisar os detalhes dessa construção de loop alternativa até
realmente precisarmos dela). Neste estágio, tudo que precisamos é de for,
portanto, vamos vê-lo em ação no prompt >>> .
Apresentamos três usos comuns de for. Veremos qual é mais adequado às
nossas necessidades.
Exemplo de uso 1. Este loop for, abaixo, obtém uma lista de números e
itera uma vez para cada número na lista, exibindo o número atual na tela.
Quando itera, o loop for atribui cada número, por vez, a uma variável de
iteração do loop, que recebe o nome i neste código.
Como o código tem mais de uma linha, o shell recua automaticamente quando
você pressiona Enter após os dois-pontos. Para sinalizar ao shell que você
terminou de inserir o código, pressione Enter duas vezes no final do suíte do loop:
Use “for” ao
fazer o loop
um número
conhecido
de vezes.
Como isto é um suíte, precisamos pressionar a tecla
Enter DUAS VEZES após digitar o código para
terminar a instrução e vê-la executada.
Note o recuo e os dois-pontos. Como as instruções if, o código associado à
instrução for precisar ser recuado.
Exemplo de uso 2. O loop for, abaixo, itera uma string, com cada
caractere nela sendo processado durante cada iteração. Isso funciona
porque uma string no Python é uma sequência. Uma sequência é uma
coleção ordenada de objetos (e veremos muitos exemplos de sequências
neste livro), e toda sequência no Python pode ser iterada pelo interpretador.
Você não tem que informar ao loop for o tamanho da string em nenhum
lugar. O Python é esperto o bastante para descobrir quando a string termina
e consegue terminar (ou seja, finalizar) o loop for em seu nome quando
esgota todos os objetos na sequência.
>>> for ch in "Hi!":
print(ch)
H
i
!
O Python é esperto o bastante para
descobrir que esta string deve ser iterada um
caractere por vez (e é por isso que usamos
“ch” como o nome da variável do loop aqui).
Usamos “i” como a variável de iteração do
loop neste exemplo, mas poderíamos tê-la
chamado de qualquer coisa. Dito isso, “i”, “j” e
“k” são incrivelmente populares entre a maioria
dos programadores nesta situação.
Uma
sequência é
uma coleção
ordenada
de objetos.
CG_HeadFirst_Python.indb 24 18/07/2018 13:17:48
Get USE A CABEÇA! PYTHON now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.