Implemente uma função que busque um produto no inventário pelo nome e exiba as informações do produto, incluindo nome, código, quantidade em estoque e preço unitário. Caso o produto não seja encontrado, exiba uma mensagem de erro.
Passo 1
O enunciado pede para a gente criar uma função que busca um produto no inventário pelo nome e exibe suas informações, como nome, código, quantidade em estoque e preço unitário. Se o produto não for encontrado, deve aparecer uma mensagem de erro. Para resolver isso, vamos precisar usar estruturas de dados para armazenar os produtos e lógica de busca para encontrar o produto pelo nome.
Passo 2
Primeiro, vamos pensar em como representar o inventário. Uma maneira simples é usar uma lista de dicionários em Python, onde cada dicionário representa um produto com suas propriedades: nome, código, quantidade e preço. Por exemplo:
inventario = [
{"nome": "Maçã", "codigo": 101, "quantidade": 50, "preco": 0.50},
{"nome": "Banana", "codigo": 102, "quantidade": 30, "preco": 0.30},
{"nome": "Laranja", "codigo": 103, "quantidade": 20, "preco": 0.80}
]
Passo 3
Agora, precisamos criar uma função que recebe o nome do produto que queremos buscar. Vamos chamar essa função de
buscar_produto
. Ela vai receber dois parâmetros: o nome_busca
e o inventario
.Passo 4
Dentro da função, vamos percorrer cada produto da lista
inventario
usando um loop for
. Para cada produto, vamos verificar se o nome dele corresponde ao nome_busca
. Para garantir que a busca não seja sensível a maiúsculas e minúsculas, vamos converter ambos os nomes para minúsculas usando o método .lower()
.Passo 5
Se encontrarmos um produto que corresponde ao nome buscado, vamos exibir suas informações: nome, código, quantidade em estoque e preço unitário. Após encontrar, podemos encerrar a função usando a palavra-chave
return
para evitar continuar a busca desnecessariamente.Passo 6
Caso o loop termine e nenhum produto tenha sido encontrado, isso significa que o produto não está no inventário. Nesse caso, vamos exibir uma mensagem de erro informando que o produto não foi encontrado.
Passo 7
Vamos implementar isso em código:
def buscar_produto(nome_busca, inventario):
for produto in inventario:
if produto["nome"].lower() == nome_busca.lower():
print(f"Nome: {produto['nome']}")
print(f"Código: {produto['codigo']}")
print(f"Quantidade em estoque: {produto['quantidade']}")
print(f"Preço unitário: R${produto['preco']:.2f}")
return
print("Erro: Produto não encontrado.")
Resposta
Pronto! Agora, ao chamar a função
buscar_produto
passando o nome do produto e o inventário, ela vai exibir as informações do produto se encontrado ou mostrar uma mensagem de erro se não for encontrado. Por exemplo:buscar_produto("Banana", inventario)
Isso vai resultar em:
Nome: Banana
Código: 102
Quantidade em estoque: 30
Preço unitário: R$0.30
E se você buscar por um produto que não existe:
buscar_produto("Uva", inventario)
A saída será:
Erro: Produto não encontrado.