Aula 17: Introdução a Dicionários

Organizando dados com chaves e valores.

O Que Você Vai Aprender

Nesta aula de 2 horas, você será introduzido aos dicionários, uma estrutura de dados fundamental em Python para organizar informações de forma flexível e eficiente, através de pares de chave-valor. Aprenderá a criar, acessar, adicionar e atualizar itens, diferenciando os métodos de acesso para um uso seguro e robusto.

🔑 Estrutura Chave-Valor

Entender o conceito de pares chave-valor e como eles organizam os dados.

➕ Criar, Acessar, Adicionar e Atualizar

Aprender a sintaxe e os métodos para manipular dicionários.

🆚 Acesso: `[]` vs. `.get()`

Diferenciar as duas principais formas de acessar valores e quando usar cada uma.

Conceito e Criação de Dicionários

Dicionários são coleções de dados que armazenam informações em pares de chave-valor. Pense neles como um dicionário de verdade, onde você busca uma palavra (chave) para encontrar sua definição (valor). Em Python, são mutáveis e, a partir da versão 3.7, mantêm a ordem de inserção.

Sintaxe

Use chaves `{}` para criar dicionários. Pares chave-valor são separados por dois pontos `:` e por vírgulas `,` entre os pares.

meu_dicionario = {'chave1': 'valor1', 'chave2': 'valor2'}
vazio = {}

Regras Importantes:

  • Chaves: Devem ser únicas e de tipo imutável (strings, números, tuplas).
  • Valores: Podem ser de qualquer tipo (strings, números, listas, ou até outros dicionários!).
aluno = {
    'nome': 'Ana Silva',
    'idade': 21,
    'curso': 'Engenharia de Software',
    'ativo': True
}

Criador de Dicionários

Crie seu próprio dicionário digitando pares chave:valor separados por vírgulas. Chaves e valores de texto devem estar entre aspas.

Acessando Valores: `[]` ou `.get()`?

Existem duas formas principais de acessar valores em um dicionário. A escolha entre elas depende de como você quer lidar com a situação de uma chave não existir.

Usando Colchetes (`[]`)

A forma mais direta. Retorna o valor associado à chave.

aluno = {'nome': 'Ana'}
print(aluno['nome']) # Saída: 'Ana'

Atenção: Se a chave não existir, isso gera um `KeyError`!

# print(aluno['idade']) # Isso geraria um KeyError

Usando o Método `.get(chave, valor_padrao)`

Retorna o valor associado à chave. Se a chave não existir, retorna `None` (por padrão) ou um `valor_padrao` que você especificar.

aluno = {'nome': 'Ana'}
print(aluno.get('nome'))      # Saída: 'Ana'
print(aluno.get('idade'))     # Saída: None
print(aluno.get('idade', 'Não Informada')) # Saída: 'Não Informada'

É a forma mais segura de acessar valores, pois evita erros quando a chave pode não existir.

Acessador de Valores no Dicionário

Acesse valores do dicionário pré-definido: `{'nome': 'Mariana', 'cidade': 'São Paulo', 'idade': 28}`

Adicionando e Atualizando Itens

Uma das grandes vantagens dos dicionários é sua mutabilidade. Você pode facilmente adicionar novos pares chave-valor ou atualizar o valor de uma chave existente usando a mesma sintaxe de colchetes `[]`!

Sintaxe

meu_dicionario[nova_chave] = novo_valor
meu_dicionario[chave_existente] = novo_valor

Como funciona:

  • Se a `nova_chave` não existe, ela é adicionada ao dicionário com o `novo_valor`.
  • Se a `chave_existente` já existe, seu valor é simplesmente atualizado para o `novo_valor`.
aluno = {
    'nome': 'Ana Silva',
    'idade': 21
}

# Adicionando uma nova chave
aluno['matricula'] = '20230101'
print(aluno) # {'nome': 'Ana Silva', 'idade': 21, 'matricula': '20230101'}

# Atualizando uma chave existente
aluno['idade'] = 22
print(aluno) # {'nome': 'Ana Silva', 'idade': 22, 'matricula': '20230101'}

Adicionar/Atualizar Itens no Dicionário

Dicionário atual: {}

Desafios para Continuar

Agora que você foi introduzido aos dicionários, é hora de praticar! Resolva estes problemas no seu ambiente de desenvolvimento Python para solidificar seu aprendizado.

  • Dicionário de Produto

    Crie um dicionário para representar um produto de um e-commerce com as seguintes informações:

    • `'nome'`: (ex: "Smartphone X")
    • `'preco'`: (ex: 999.99)
    • `'estoque'`: (ex: 50)
    • `'categoria'`: (ex: "Eletrônicos")

    Em seguida, faça o seguinte:

    • Imprima o preço do produto.
    • Adicione uma nova chave `"desconto"` com o valor `0.1` (10%).
    • Atualize o valor do estoque para `45`.
    • Imprima o dicionário completo para ver as alterações.