English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
O loop for em Python pode percorrer itens de qualquer sequência, como uma lista ou uma string.
O loop for em Python é usado para iterar sobre sequências (lista,tupla,string) ou outro objeto iterável. Iterar sobre uma sequência é chamado de percorrer.
for val in sequence: Corpo do loop for
Aqui, val é a variável que obtemos o valor do item dentro da sequência em cada iteração.
O loop continua até que能达到序列中的最后一项。使用缩进将for循环的主体与其他代码分开。
# O programa encontra a soma de todos os números armazenados na lista # Lista de números numbers = [6, 5, 3, 8, 4, 2, 5, 4, 11] # Variável usada para armazenar a soma sum = 0 # Percorrer a lista for val in numbers: sum = sum+val print("A soma é", sum)
Quando você executar o programa, a saída será:
A soma é 48
Podemos gerar sequências de números usando a função range(). range(10) produzirão de 0 até9Os números entre10número(s).
Também podemos definir o início, o fim e o passo como range(start, stop, step_size). Se não for fornecido, o step_size é o padrão de1.
O objeto range é, em certo sentido, 'perezoso', pois não gera todos os números 'contidos' ao criá-lo. Mas não é um iterador; ele suporta operações in, len e getitem.
Essa função não armazena todos os valores na memória; isso seria ineficiente. Portanto, ela lembrará o início, o fim e o passo, e gerará o próximo número durante a execução.
Para forçar a saída de todos os itens dessa função, você pode usar a função list().
Este exemplo demonstrará isso.
print(range(10)) print(list(range(10)) print(list(range(2, 8)) print(list(range(2, 20, 3))
Resultados de saída
range(0, 10] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] [2, 3, 4, 5, 6, 7] [2, 5, 8, 11, 14, 17]
Podemos usar a função range() no loop for para iterar sobre sequências de números. Ela pode ser usada com a função len() para navegar por sequências. Este é um exemplo.
# Programas para navegação por índice em lista genre = ['pop', 'rock', 'jazz'] # Navegação por índice em lista for i in range(len(genre)): print("Eu gosto", genre[i])
Quando o programa for executado, a saída será:
Eu gosto de pop Eu gosto de rock Eu gosto de jazz
O loop for também pode ter um bloco else opcional.
Se o item da sequência usada no loop for acabar, o bloco else será executado.
A palavra-chave break pode ser usada para parar o loop for. Neste caso, o bloco else será ignorado.
Portanto, se não houver interrupção, o bloco else do loop for será executado.
Este é um exemplo para ilustrar isso.
digits = [0, 1, 5] for i in digits: print(i) else: print("Nenhum item restante.")
Quando o programa for executado, a saída será:
0 1 5 "Nenhum item restante."
Aqui, o loop for imprimirá os itens da lista até que o loop acabe. Quando o loop acabar, ele executará o bloco de código else e imprimirá ""Nenhum item restante."
A instrução for...else pode ser usada com a palavra-chave break para executar o bloco else apenas se o break não for executado. Vamos dar um exemplo:
# Programas para exibir as notas dos alunos student_name = 'Soyuj' marks = {'James': 90, 'Jules': 55, 'Arthur': 77} for student in marks: if student == student_name: print(marks[student]) break else: print('Nenhuma entrada encontrada com esse nome.')
Resultados de saída
Nenhuma entrada encontrada com esse nome.