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