1
resposta

Minha solução pra despensa do Roberto

despensa = ["macarrão", "atum", "arroz", "feijão"]
item = input("Digite o item desejado: ").strip().lower()
if not item:
    print("Você deve digitar um item.")
else:
    if item in despensa:
        print(f"O item {item} já está na despensa.")
    else:
        print(f"O item {item} precisa ser comprado.")
1 resposta

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údos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!