for
Definição
- É uma estrutura de repetição (loop) que permite executar um bloco de comandos enquanto uma determinada condição é verdadeira.
- É possível usar o comando else para executar um código imediatamente ao final da repetição.
- O comando break permite parar abruptamente o bloco de comandos do for.
- O comando continue permite ignorar uma repetição do bloco de comandos do for.
Exemplos
- Exemplo: imprime todos os números que estão na lista sequencia, exceto o número 2.
sequencia = [1,2,3,4,5]
for x in sequencia:
if x == 2:
continue
print(x)
else:
print("*** Fim do programa")
- Exemplo: imprime os números que estão na lista sequencia até encontrar o número 2. Observe que o bloco do comando else não é executado.
sequencia = [1,2,3,4,5]
for x in sequencia:
if x == 2:
break
print(x)
else:
print("*** Fim do programa")
- Exemplo: imprime os valores de duas listas.
nome = ["Maria", "João", "Pedro", "Teresa"] matricula = ["20181210003", "20192210020", "20151210014", "20171210031"] i = 0 for x in nome: print(x, matricula[i]) i += 1
- Exemplo: imprime as listas de uma lista e, em seguida, imprime os elementos de cada lista.
list_of_lists = [ [1, 2, 3], [4, 5, 6], [7, 8, 9]]
print("Primeira parte")
for list in list_of_lists:
print(list)
print("\nSegunda parte")
for list in list_of_lists:
for x in list:
print(x)
O resultado do programa é mostrado abaixo.
Primeira parte [1, 2, 3] [4, 5, 6] [7, 8, 9] Segunda parte 1 2 3 4 5 6 7 8 9
- Exemplo: imprime os itens de um dicionário.
alunos = {
"aluno1" : {
"nome" : "Maria Flor",
"matrícula" : 12345,
"telefone" : 999999,
"disciplinas" : ["DPW", "OC", "TP1"],
"características" : {"sexo": "F", "idade": 19}
},
"aluno2" : {
"nome" : "João Pedro",
"matrícula" : 67890,
"telefone" : 888888,
"disciplinas" : ["LOG", "SO", "TP2"],
"características" : {"sexo": "M", "idade": 20}
}
}
for x in alunos:
print(alunos[x])
- Exemplo: a função range (inicio, final, incremento) permite definir a sequência de números a ser usada no loop. Abaixo, são apresentadas duas formas para se obter o quadrado dos números menores que ou iguais ao valor 10. Note que, por padrão, o valor inicial da função range() é 0 e o valor padrão do incremento da função range() é 1. Além disso, observe que o loop termina no valor inteiro menor que o valor final definido na função range().
print("*** Primeira forma")
for x in range (0,11, 1):
print (x**2)
print("\n*** Segunda forma")
for x in range(11):
print(x*x)
