Eu entendo bem como você se sente, e vou te ajudar nisso. Isso é normal, inclusive no mercado de trabalho, onde nem sempre vamos lidar com tarefas de código que já conhecemos. Nessas horas, tanto nos estudos quanto no trabalho, é importante seguir alguns passos que ajudam muito:
- Leia o problema com atenção
- Quebre-o em partes menores
- Escreva a teoria de como você resolveria o problema
- Separe o que você já sabe do que precisa pesquisar
Sobre a melhor forma de absorver o conteúdo, cada pessoa aprende de um jeito. No meu caso, eu fixo melhor quando coloco a mão na massa, escrevo sobre o assunto ou explico para alguém o que aprendi. Essas são estratégias que você pode experimentar e ver qual funciona melhor pra você.
Agora, sobre a questão 11, podemos resolver juntos, passo a passo, quebrando em partes menores para entender como podemos organizar e transformar isso em código. Vem comigo!
Enunciado:
Uma empresa de e-commerce está interessada em analisar as vendas dos seus produtos. Os dados das vendas foram armazenados em um dicionário:
{'Produto A': 300, 'Produto B': 80, 'Produto C': 60,
'Produto D': 200, 'Produto E': 250, 'Produto F': 30}
Escreva um código que calcule o total de vendas e o produto mais vendido.
Objetivo do problema: O objetivo é extrair duas informações a partir de um dicionário de vendas:
- O total de unidades vendidas somando todos os produtos.
- O produto mais vendido, ou seja, aquele com o maior número de unidades.
Partes menores (teoria)
- Ler os dados do dicionário: já estão prontos, não precisamos tratar entradas.
- Calcular o total de vendas: Somar todos os valores do dicionário.
- Encontrar o produto mais vendido: e aqui pode vir a dúvida - como encontro a chave que tem maior valor em um dicionário? Aqui viriam pesquisas, no Google mesmo ou até usando a IA se prefeir. Vou te diantar e dizer que podemos percorrer através de um loop
for
ou então, usar a função max
que nos mostra o elemento de maior valor de um conjunto de dados. - Exibir os resultados
Transformando teoria em código
# Dicionário com os dados de vendas
vendas = {
'Produto A': 300,
'Produto B': 80,
'Produto C': 60,
'Produto D': 200,
'Produto E': 250,
'Produto F': 30
}
# 1. Calcular o total de vendas
total_vendas = sum(vendas.values())
# 2. Encontrar o produto mais vendido
produto_mais_vendido = max(vendas, key=vendas.get)
quantidade_mais_vendida = vendas[produto_mais_vendido]
# 3. Exibir os resultados
print(f"Total de vendas: {total_vendas}")
print(f"Produto mais vendido: {produto_mais_vendido} ({quantidade_mais_vendida} unidades)")
A função max(iterável, key=função)
retorna o maior elemento do iterável, baseado no resultado da função passada como key. Neste caso vendas é um dicionário, então quando usamos ele como iterável, estamos iterando pelas chaves (ou seja: 'Produto A', 'Produto B'...). A função usada como key é vendas.get
. É como se estivéssemos fazendo isso internamente:
# Para cada chave do dicionário, o max vai comparar:
vendas.get('Produto A') # 300
vendas.get('Produto B') # 80
vendas.get('Produto C') # 60
...
Ou seja, o max()
vai escolher a chave cujo valor retornado por vendas.get(chave)
for o maior.
Nessa lógica, utilizamos várias funções prontas do Python. Para conhecer e aplicar essas funções, é preciso pesquisar e ler bastante. Costumo dizer que isso é uma característica da área de tecnologia: estamos sempre aprendendo e estudando todos os dias. Continue persistindo e, com o tempo, você verá o quanto o processo fica melhor.
Fico à disposição! E se precisar, conte sempre com o apoio do fórum. Abraço e bons estudos!
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!