Compreensão de Dicionários em Python: Simplifique Seu Código

Ana Maria Gomes
4 minutos de leitura

Conteúdos do tutorial

A compreensão de dicionários é uma das funcionalidades mais elegantes e úteis do Python, pois permite a criação de dicionários de forma concisa e eficiente. Neste tutorial, vamos explorar como você pode utilizar a compreensão de dicionários para simplificar seu código e torná-lo mais Pythonico.

O Que é Compreensão de Dicionários?

A compreensão de dicionários é uma maneira de criar dicionários usando uma expressão concisa que especifica a chave e o valor, juntamente com uma sequência ou um iterável que será processado para gerar esses elementos.

Sintaxe Básica

A sintaxe básica da compreensão de dicionários é a seguinte:

{chave: valor for item in iteravel}

Vamos ver um exemplo prático para entender melhor.

Exemplo Prático

Imagine que você tem uma lista de nomes e deseja criar um dicionário onde cada nome é associado ao seu comprimento. Sem a compreensão de dicionários, você faria algo assim:

nomes = ['Alice', 'Bob', 'Charlie']
comprimento_nomes = {}

for nome in nomes:
    comprimento_nomes[nome] = len(nome)

print(comprimento_nomes)
Testar

Com a compreensão de dicionários, você pode simplificar esse código para:

nomes = ['Alice', 'Bob', 'Charlie']
comprimento_nomes = {nome: len(nome) for nome in nomes}

print(comprimento_nomes)
Testar

Adicionando Condições

Você também pode adicionar condições à compreensão de dicionários para filtrar itens. Por exemplo, se quisermos incluir apenas nomes com mais de três letras, podemos fazer:

nomes = ['Ana', 'Bob', 'Charlie']
comprimento_nomes = {nome: len(nome) for nome in nomes if len(nome) > 3}

print(comprimento_nomes)
Testar

Usando Diferentes Fontes de Dados

A compreensão de dicionários não se limita a listas. Você pode usar qualquer iterável, como tuplas, conjuntos ou até mesmo outros dicionários. Veja um exemplo usando uma lista de tuplas:

pares = [('um', 1), ('dois', 2), ('três', 3)]
dicionario_numeros = {chave: valor for (chave, valor) in pares}

print(dicionario_numeros)
Testar

Compreensão de Dicionários Aninhados

Para casos mais complexos, você pode aninhar compreensões de dicionários dentro de outras. Isso é útil quando você está trabalhando com dados multidimensionais. Por exemplo:

dados = {'Alice': [5, 2, 3], 'Bob': [1, 2, 3]}
soma_dados = {nome: sum(valores) for nome, valores in dados.items()}

print(soma_dados)
Testar

Conclusão

A compreensão de dicionários é uma ferramenta poderosa que pode ajudar a tornar seu código mais limpo, mais legível e mais eficiente. Com a prática, você começará a ver oportunidades para usar compreensões de dicionários em muitas situações, reduzindo a quantidade de código que você precisa escrever e mantendo a clareza.

Então, lembre-se de que a compreensão de dicionários é apenas uma das muitas características que tornam o Python uma linguagem tão agradável e produtiva para programar. Experimente em seus próprios projetos e veja como você pode simplificar suas estruturas de dados e loops.

Inscreva-se gratuitamente e fique atualizado

Receba toda semana um resumo dos principais conteúdos da Asimov direto no seu e-mail. 100% livre de spam.

Áreas de interesse: