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

Boa noite,
Segue abaixo o código utilizado para a solução da atividade

def buscar_livro(lista, nome_procurado):
    for livro in lista:
        if livro.lower() == nome_procurado.lower():
            print(f"Livro encontrado: {livro}")
            break
    else:
        print(f'Livro "{nome_procurado}" não encontrado na lista.')


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

livro_procurado = input("Digite o nome do livro que deseja buscar: ")
buscar_livro(livros, livro_procurado)
1 resposta

Oi, Laura. Tudo bem com você?

Seu código atende à proposta da atividade e ainda traz uma adaptação interessante ao permitir que o nome do livro seja informado pelo usuário. O uso do break está correto dentro do for, pois, quando o livro procurado é encontrado, a mensagem é exibida e a busca é interrompida imediatamente. A comparação com .lower() também permite que entradas como O Hobbit, o hobbit ou O HOBBIT sejam consideradas equivalentes, deixando a busca mais flexível.

Outro ponto legal é o uso do else associado ao for. Nesse caso, ele é executado somente quando o laço termina sem encontrar um livro que corresponda à busca. A função buscar_livro também deixa o código mais reutilizável, já que a mesma lógica pode ser usada com outras listas de livros e outros nomes procurados.

Como você adaptou a atividade para receber qualquer livro pelo input, que outro comportamento você adicionaria para deixar essa busca ainda mais útil para quem está usando o sistema?

Parabéns pelo exercício, Laura, e obrigado por compartilhar sua solução. Continue praticando e compartilhando suas experiências por aqui. O fórum está à disposição sempre que precisar.

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