Módulo 6 - Dicionários: buscar pela etiqueta

Buscar pela etiqueta, não pela posição

8 min de leitura · por Cesar Gargiulo, revisado pela equipe ValorFinal e GuardiaSec · Atualizado em 08/07/2026

O que você vai aprender

  • Entender o dicionário como pares de chave (etiqueta) e valor.
  • Recuperar um valor informando a chave, sem varrer a estrutura.
  • Diferenciar a busca por etiqueta (dicionário) da busca por posição (lista).
  • Reconhecer dados que pedem naturalmente um dicionário.

A agenda de telefones

A lista que você conhece é uma fila numerada: para pegar um item, você usa a posição, ou percorre tudo até achar. Isso é ótimo quando a ordem importa (a chamada da escola, a fila do banco), mas desajeitado quando o que você tem em mãos é uma etiqueta, não um número. Ninguém procura um contato pensando ele é o terceiro da lista; a gente pensa quero o telefone da Ana. O nome Ana é a etiqueta que leva ao telefone. O dicionário é a estrutura desenhada para exatamente esse tipo de busca: em vez de posições numeradas, ele guarda pares de etiqueta e conteúdo, e entrega o conteúdo assim que você diz a etiqueta.

O nome dicionário não é à toa: pense no dicionário de papel. Você não lê da primeira à última página para achar a palavra fototropismo; você vai direto pela palavra, que é a etiqueta, e lê a definição, que é o valor. A lista telefônica antiga funcionava igual: o nome levava ao número. No programa, chamamos a etiqueta de chave e o conteúdo de valor, e o conjunto de par chave-valor. Um cadastro de produtos guarda o preço de cada nome; um placar guarda os pontos de cada jogador; um sistema de login guarda a senha de cada usuário. Todos são dicionários, e a busca é sempre pela chave.

Três etiquetas penduradas, cada uma ligada por um barbante a um valor. A etiqueta Ana liga ao telefone 9991; a etiqueta Beto liga ao 9982; a etiqueta Caio liga ao 9973. Uma mão aponta para a etiqueta Beto e uma seta vai direto ao valor 9982, sem passar pelas outras.
No dicionário, a chave (etiqueta) leva direto ao valor. Informar Beto entrega o telefone dele na hora.

Informar a chave, receber o valor

Acessar um dicionário é parecido com indexar uma lista, só que no lugar do número entra a etiqueta. Onde na lista você escreveria nomes[2], no dicionário você escreve agenda[Ana], e recebe o valor guardado sob a chave Ana. Repare que você não precisa saber onde a Ana está: o dicionário cuida disso. Essa é a grande diferença conceitual. Na lista, você pergunta o que está na posição 2?. No dicionário, você pergunta o que está sob a etiqueta Ana?. A primeira pergunta depende da ordem; a segunda, do significado. É por isso que dados identificados por um nome, um código ou um id combinam tanto com dicionário.

agenda <- {
  "Ana": "9991-0001",
  "Beto": "9982-0002",
  "Caio": "9973-0003"
}
escreva(agenda["Beto"])   // 9982-0002
// a chave "Beto" leva direto ao valor, sem varrer a agenda

Cada par tem chave (nome) e valor (telefone). agenda[Beto] entrega o telefone dele sem percorrer nada.

🎮 Jogo da aula

Busque pela chave

Use a chave para descobrir o valor que o dicionário entrega. Não é posição: é etiqueta.

precos <- {
  "pao": 0.50,
  "leite": 4.20,
  "cafe": 18.90
}
escreva(precos["leite"])

A chave é única

Uma regra importante do dicionário: cada chave é única. Não dá para ter duas etiquetas Ana apontando para telefones diferentes, do mesmo jeito que uma palavra tem uma entrada no dicionário de papel, não duas. Se você guardar um valor numa chave que já existe, o valor novo substitui o antigo, não cria um segundo par. Isso é ótimo para dados que têm um identificador natural e único (o CPF de uma pessoa, o código de um produto, o e-mail de um usuário), e é justamente o que torna o dicionário perfeito para cadastros. Já os valores podem repetir à vontade: dois produtos podem custar o mesmo preço, dois contatos podem ter o mesmo sobrenome. A unicidade é só da chave.

Teste rápido

Qual a diferença central entre buscar um dado numa lista e num dicionário?

Perguntas frequentes

Dicionário, mapa e objeto são a mesma coisa?
São nomes diferentes para a mesma ideia de pares chave-valor, conforme a linguagem. Em Python é dicionário (dict); em Java é mapa (Map); em JavaScript se usa muito o objeto e também o Map. A estrutura e o raciocínio são os mesmos que você aprende aqui: buscar valor pela chave.
A chave precisa ser texto?
Costuma ser texto (um nome, um código), mas em muitas linguagens a chave pode ser número também (o id 42 levando aos dados de um usuário). O essencial é que a chave seja única e sirva para identificar o valor. Texto é o caso mais comum porque etiquetas legíveis são práticas.
O dicionário tem ordem, como a lista?
Depende da linguagem, mas conceitualmente a ordem não é o ponto do dicionário: o que importa é a associação chave-valor. Você não pensa qual é o terceiro item, e sim qual é o valor da chave X. Se a ordem importa para o seu problema, talvez uma lista (ou uma combinação das duas) seja melhor.
O que acontece se eu buscar uma chave que não existe?
Depende da linguagem: algumas dão erro, outras devolvem um valor vazio ou um padrão que você define. Por isso é comum, antes de buscar, checar se a chave existe no dicionário. Você vê essa verificação na próxima aula, junto com criar, atualizar e remover pares.
Posso guardar coisas complexas como valor?
Pode. O valor pode ser um número, um texto, uma lista, e até outro dicionário. Um cadastro de cliente pode ter o CPF como chave e, como valor, um dicionário com nome, endereço e telefone. Essa combinação de estruturas é o que permite representar dados ricos do mundo real.
Por que a chave precisa ser única?
Para que a busca seja sem ambiguidade: informada a chave, há um único valor a devolver. Se duas chaves iguais apontassem para valores diferentes, o dicionário não saberia qual entregar. Por isso guardar na mesma chave substitui o valor. Escolher uma chave naturalmente única (CPF, código) evita confusão.

Fontes

Seu progresso fica salvo neste aparelho. Assinantes sincronizam entre os aparelhos.