PythonColeçõesintermediario

Agrupar por categoria

Quando você trabalha com dados reais, é comum precisar organizar itens em grupos: produtos por categoria, emails por remetente, filmes por gênero. Em Python, a forma mais natural de fazer isso é usando um dicionário onde cada chave é o grupo e o valor é uma lista dos itens. Dominar esse padrão evita que você recorra a bibliotecas externas e mantém o código claro e eficiente.

O PROBLEMA

Agrupe tuplas (produto,categoria) em dicionário de listas.

EXEMPLO

{"grãos":["arroz","feijão"]}

SOBRE O CONCEITO

Para agrupar, você percorre uma lista de tuplas e, para cada elemento, verifica se a chave já existe no dicionário. Se não existir, cria uma lista vazia. Depois, adiciona o item à lista. O erro KeyError acontece quando você tenta acessar ou modificar uma chave que ainda não foi criada — por exemplo, dict[chave].append(item) sem antes garantir que a chave existe. A solução é usar if chave not in dict: para inicializá-la. Evite o uso de defaultdict porque ele esconde essa lógica e pode atrapalhar o entendimento de iniciantes.

RESOLUÇÃO

Mais exercícios de Coleções

PYCO20I · IntermediárioCache com dicionárioPYCO24A · AvançadoHistograma de textoPYCO15I · IntermediárioTuplas como chavesPYCO16I · IntermediárioSet de emails únicos
Ver todos os exercícios de Python