Oii, Gabriel. Tudo bem?
A sua solução ficou muito boa. É interessante notar como você foi além do que foi solicitado no exercício, demonstrando atenção aos detalhes que tornam o programa mais confiável.
- Uso do .strip() e .lower(): Essa foi uma excelente escolha. O
strip() evita que espaços em branco acidentais antes ou depois da palavra causem um erro na verificação, e o lower() garante que, mesmo que o usuário digite "ARROZ" ou "Arroz", o programa consiga identificar o item na lista (desde que os itens na lista também estejam em letras minúsculas). - Tratamento de entrada vazia: Ao adicionar o
if not item:, você evita que o programa tente processar uma resposta em branco, o que é uma boa prática de programação.
Caso você queira que a mensagem de saída exiba o nome do item exatamente como o usuário digitou (com a primeira letra maiúscula, por exemplo), mas ainda assim mantenha a comparação funcionando internamente, você pode usar o método .capitalize() no momento do print.
despensa = ["macarrão", "atum", "arroz", "feijão"]
item_digitado = input("Digite o item desejado: ").strip()
item_comparacao = item_digitado.lower()
if not item_digitado:
print("Você deve digitar um item.")
else:
if item_comparacao in despensa:
print(f"O item {item_digitado.capitalize()} já está na despensa.")
else:
print(f"O item {item_digitado.capitalize()} precisa ser comprado.")
Parabéns pelo código e por buscar formas de deixar o script mais completo.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!