Dicionários

Introdução ao Python para desenvolvedores

Jasmin Ludolf

Senior Data Science Content Developer

Lista de ingredientes

ingredients = ["pasta", "tomatoes", "garlic", "basil", "olive oil", "salt"]

# Quantidades dos ingredientes (em gramas) quantities = [500, 400, 15, 20, 30, 5]
Introdução ao Python para desenvolvedores

Dicionário

  • Dicionário = pares chave-valor

Dicionário anotado com a palavra (chave) e a definição (valor)

1 https://unsplash.com/@sandym10
Introdução ao Python para desenvolvedores

Por que usar dicionários?

  • username
  • email
  • preferences

 

  • ip_address
  • location

$$

  • Escalador de receitas: vincule ingredientes a quantidades

Informações do usuário

Rede de computadores

1 User image by Bilobaba Vladimir, Aviavlad; https://unsplash.com/@jjying
Introdução ao Python para desenvolvedores

Criando um dicionário

# Criando um dicionário
recipe = 
Introdução ao Python para desenvolvedores

Criando um dicionário

# Criando um dicionário
recipe = {
Introdução ao Python para desenvolvedores

Criando um dicionário

# Criando um dicionário
recipe = {"pasta"
Introdução ao Python para desenvolvedores

Criando um dicionário

# Criando um dicionário
recipe = {"pasta":
Introdução ao Python para desenvolvedores

Criando um dicionário

# Criando um dicionário
recipe = {"pasta": 500
Introdução ao Python para desenvolvedores

Criando um dicionário

# Criando um dicionário
recipe = {"pasta": 500,
Introdução ao Python para desenvolvedores

Criando um dicionário

# Criando um dicionário
recipe = {"pasta": 500,
          "tomatoes": 400,
Introdução ao Python para desenvolvedores

Criando um dicionário

# Criando um dicionário
recipe = {"pasta": 500,
          "tomatoes": 400, 
          "garlic": 15,
          "basil": 20, 
          "olive oil": 30,
          "salt": 5
Introdução ao Python para desenvolvedores

Criando um dicionário

# Criando um dicionário
recipe = {"pasta": 500,
          "tomatoes": 400, 
          "garlic": 15,
          "basil": 20, 
          "olive oil": 30,
          "salt": 5}
Introdução ao Python para desenvolvedores

Acessar um valor pela chave

  • Dicionários são ordenados

    • Permitem acessar valores por indexação pela chave
  • Quanta pasta precisamos?

# Encontre a quantidade do ingrediente
print(recipe["pasta"])
500
Introdução ao Python para desenvolvedores

Acessar todos os valores

# Obter todos os valores de um dicionário
print(recipe.values())
dict_values([500, 400, 15, 20, 30, 5])
Introdução ao Python para desenvolvedores

Acessar todas as chaves

# Obter todas as chaves de um dicionário
print(recipe.keys())
dict_keys(['pasta', 'tomatoes', 'garlic', 'basil', 'olive oil', 'salt'])
Introdução ao Python para desenvolvedores

Ver um dicionário inteiro

# Imprimir o dicionário
print(recipe)
{'pasta': 500, 'tomatoes': 400, 'garlic': 15, 'basil': 20, 'olive oil': 30,
'salt': 5}
# Obter todos os itens (pares chave-valor)
print(recipe.items())
dict_items([('pasta', 500), ('tomatoes', 400), ('garlic', 15), ('basil', 20), 
('olive oil', 30), ('salt', 5)])
Introdução ao Python para desenvolvedores

Adicionar um par chave-valor

# Adicionar um novo par chave-valor
recipe["parmesan"] = 50
print(recipe)
{'pasta': 500, 'tomatoes': 400, 'garlic': 15, 'basil': 20, 'olive oil': 30,
'salt': 5, 'parmesan': 50}
Introdução ao Python para desenvolvedores

Atualizar um valor

print(recipe)
{'pasta': 500, 'tomatoes': 400, 'garlic': 15, 'basil': 20, 'olive oil': 30,
'salt': 5, 'parmesan': 50}
# Atualizar o valor de uma chave existente
recipe["pasta"] = 1000
print(recipe)
{'pasta': 1000, 'tomatoes': 400, 'garlic': 15, 'basil': 20, 'olive oil': 30,
'salt': 5, 'parmesan': 50}
Introdução ao Python para desenvolvedores

Chaves duplicadas

# Criando um dicionário com chave duplicada
recipe = {"pasta": 500, "garlic": 5, 
          "garlic": 15, "basil": 20, 
          "olive oil": 30, "salt": 5}

# Imprimir o valor da chave duplicada print(recipe["garlic"])
15
Introdução ao Python para desenvolvedores

Vamos praticar!

Introdução ao Python para desenvolvedores

Preparing Video For Download...