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)