Programador Leigo
⚡ 60 segundos dicionarios

Agrupar dados com setdefault()

setdefault() retorna o valor se a chave existe, ou insere o padrão. Ideal para agrupar sem if.

setdefault.py
alunos = [
    ('Ana', 'Python'),
    ('Bia', 'SQL'),
    ('Ana', 'Flask'),
    ('Carlos', 'Python'),
]

por_aluno = {}
for nome, curso in alunos:
    por_aluno.setdefault(nome, []).append(curso)

print(por_aluno)
# {'Ana': ['Python', 'Flask'], ...}

Compartilhar