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

[Projeto] Desafio: hora da prática

1 resposta

Olá, Maico! Como vai?

Parabéns pela entrega! Resolver uma lista completa de desafios cobrindo Estruturas de Dados em Python (como listas, dicionários, tuplas e conjuntos) é um passo gigantesco. Esses conceitos formam a base de qualquer projeto real de Data Science.

Notei que na primeira imagem você acabou anexando um print do Excel (com uma análise super legal de histograma e médias condicionais!), enquanto a segunda imagem traz o seu código Python completo do desafio. Analisando a sua resolução do Python, separei alguns pontos técnicos excelentes e boas práticas para consolidar seu aprendizado:


1. Destaque de Boas Práticas: Métodos de Dicionários

Na parte onde você manipula dados de cadastros ou contagens, utilizar estruturas chave-valor (dicionários) é a escolha mais performática na era dos dados. O acesso a um elemento em um dicionário bem estruturado tem complexidade constante, o que significa que seu código roda incrivelmente rápido, mesmo se a base crescer para milhares de linhas.


2. Otimização Técnica: List Comprehensions

Em vários momentos onde você precisou filtrar ou transformar elementos de uma lista, a abordagem tradicional com loops for e .append() funciona perfeitamente e é super didática.

Contudo, à medida que você avança para o ecossistema de Data Science, adotar as List Comprehensions torna seu código muito mais "pythônico", limpo e rápido. Veja um exemplo prático de transição:

# Modo tradicional (comum):
quadrados = []
for x in lista:
    quadrados.append(x**2)

# Modo avançado (List Comprehension):
quadrados = [x**2 for x in lista]

3. Evitando Duplicações com Estruturas de Conjuntos (set)

Sempre que o desafio pedir para identificar elementos únicos, coletar itens sem repetição ou remover duplicadas de uma lista de dados, lembre-se da estrutura de dados set (Conjunto).

Transformar uma lista com duplicados em um conjunto remove todas as repetições instantaneamente, sem que você precise criar laços condicionais para verificar se o item já foi adicionado:

lista_com_duplicados = ['PF', 'PJ', 'PF', 'PF', 'PJ']

# Filtrando os tipos de forma direta:
tipos_unicos = set(lista_com_duplicados) 
# Resultado: {'PF', 'PJ'}

A sua consistência na escrita do código e a formatação das saídas demonstram que você pegou muito bem a lógica de manipulação dessas coleções. Continue com esse ótimo foco para os próximos capítulos de funções e bibliotecas de análise!

Espero que possa ter lhe ajudado!