ExpertiDict

Python · Essencial · Português · Técnico

compreensão de dicionário

/kõpɾeẽˈsɐ̃w dʒi dʒisjoˈnaɾju/substantivo

Sintaxe compacta que cria um dict a partir de um iterável, no formato {chave: valor for item in dados}, com filtro opcional por if.

Onde usar

Serve para indexar objetos por id, inverter mapeamentos ou filtrar configurações. Em code review, vale quebrar em laço comum quando a expressão deixa de caber numa linha legível.

Em código

nomes = ['ana', 'bia', 'caio']
tam = {n: len(n) for n in nomes}
print(tam)  # {'ana': 3, 'bia': 3, 'caio': 4}

Exemplos

Montei um índice por id com uma compreensão de dicionário.

Essa compreensão de dicionário inverte as chaves e os valores.

Cuidado

Se chaves se repetirem, a última sobrescreve as anteriores em silêncio; cuidado quando perder dados for um problema.

Sinônimos

dict comprehension

Veja também

Todos os termos de Python