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

Faça como eu fiz: juntando listas de produtos

def combinar_listas(produtos, precos):
    """
    Recebe duas listas (produtos e preços) e retorna uma lista combinada
    no formato produto: preço.
    """
    combinacao = list(zip(produtos, precos))
    return combinacao


print("=== Sistema de Estoque ===")


produtos = input("Digite os nomes dos produtos separados por espaço: ").split()
precos = input("Digite os preços correspondentes separados por espaço: ").split()


precos = [float(preco) for preco in precos]


estoque = combinar_listas(produtos, precos)


print("\nProdutos e seus preços:")
for produto, preco in estoque:
    print(f"{produto}: R$ {preco:.2f}")
1 resposta

Oi, Penha, como vai?

Sua solução está correta e utiliza a função zip() de forma adequada para associar cada produto ao seu respectivo preço. A separação da lógica em uma função específica também contribui para a organização e reutilização do código.

Um detalhe que vale observar é que o enunciado sugere entradas separadas por vírgula, enquanto sua implementação utiliza split() sem parâmetros, considerando espaços como separadores. O código funciona bem dentro dessa proposta, mas, se fosse necessário seguir exatamente o formato do exercício, seria interessante adaptar a leitura para considerar vírgulas.

Como você trataria uma situação em que a quantidade de produtos fosse diferente da quantidade de preços informados?

Parabéns pela resolução da atividade e por compartilhar sua solução. O fórum está à disposição para acompanhar sua evolução nos estudos.

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