Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Entendendo o uso do break

livros = ["1984", "Dom Casmurro", "O Pequeno Príncipe", "O Hobbit", "Orgulho e Preconceito"]

for livro in livros:
    if livro == "O Hobbit":
        print(f"Livro encontrado: {livro}")
        break

na resolução do professor a saída não imprime o nome das outras variáveis da lista, só hobbit. Isso não está errado? - Eu achei que deveria mostrar as outras variáveis e depois reli a questão e descobri que não. O código está condicionado a aparecer o print assim que a condição estiver correta

1 resposta

Oi, Nathã. Tudo bem com você?

Sua solução está correta e a sua dúvida é bem interessante, porque ajuda a entender exatamente a diferença entre percorrer uma lista e exibir os elementos encontrados. Nesse exercício, a saída deve mostrar somente "O Hobbit", pois o print está dentro da condição if. Os outros livros são percorridos pelo for, mas como não atendem à condição, nenhuma mensagem é exibida para eles.

Além disso, o break é responsável por encerrar o for assim que "O Hobbit" é encontrado. Isso significa que "Orgulho e Preconceito", que aparece depois dele na lista, nem chega a ser verificado.

Sua releitura do enunciado foi importante para perceber esse detalhe. Esse tipo de análise ajuda bastante a diferenciar o que o código faz daquilo que inicialmente imaginamos que ele deveria fazer. O que você acha que aconteceria com a saída se o break fosse retirado do código?

Parabéns por concluir a atividade, compartilhar sua solução e também registrar seu raciocínio no fórum. Continue compartilhando suas dúvidas e descobertas, pois elas podem ajudar outros estudantes. O fórum está à disposição para continuar seus estudos.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!