Os loops são muito úteis para iterar sobre um objeto ou simplesmente repetir uma parte do código. No entanto, às vezes é necessário "sair" do loop prematuramente. Imagine que quer encontrar o primeiro elemento negativo numa sequência. Se começar a iterar a partir do primeiro elemento e avançar, vai querer parar o loop assim que encontrar um elemento negativo, evitando continuar a iterar desnecessariamente. Isto pode ser conseguido com o comando break:
numbers = [
1, 5, 100, 77,
2, -7, 8, 10,
14, 67, -8, 0,
]
for n in numbers:
print(f'Trying {n}...')
if n < 0:
print(f'Found a negative number: {n}')
break
print('Done!')
Os outputs do programa serão os seguintes:
Trying 1...
Trying 5...
Trying 100...
Trying 77...
Trying 2...
Trying -7...
Found a negative number: -7
Done!
O programa para assim que encontra um número negativo.
Desafio
Está a procurar os registos do Mike numa grande pilha de documentos. Analisa cada documento um a um para ver a quem pertencem os registos. Se encontrar o Mike nos registos, pretende imprimir o número de documentos que analisou antes de encontrar o dele.
A entrada contém nomes - cada nome numa única linha.
A saída do programa deve ser: Found Mike's records after looking through X documents. Onde X é o número de documentos que examinou até então.
Entrada
Saída
Kate
Bob
Mike
Anna
Steven
Found Mike's records after looking through 3 documents