Gabarito:
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
Dúvida: 1) Esse código do gabarito nao é funcional para o usuário final, tendo em vista que ele precisa de um meio para informar livro desejado e pelo que entendi do código, esse meio nao é fornecido. Öu seja, como o usuário daria entrada no livro desejado?
- Consegui resolver fazendo da seguinte forma, mas percebi 2 novas falhas:
livro_desejado = input("Digite o nome do livro desejado: ")
livros = ["1984", "Dom Casmurro", "O Pequeno Príncipe", "O Hobbit", "Orgulho e Preconceito"]
for livro in livros:
if livro == livro_desejado:
print(f"Livro encontrado: {livro}")
break
else:
print("Livro não encontrado")
Com esse código, diferente do gabarito, resolvi a dúvida 1), mas o resultado "Livro não encontrado" é mostrado toda vez que o livro não corresponde ao digitado, e isso não é necessário. O objetivo é mostrar o nome do livro encontrado ou uma única vez o resultado "Livro não encontrado".
Outro problema é que o código é rígido ao não levar em consideracão que o usuário pode digitar o livro com erros de acentuacão ou ainda com letras maiúsculas ou minúsculas.
Como resolver, de modo que fique razoavelmente funcional para o usuário final?