Como Adicionar a um Dicionário em Python

Introdução

Dicionário é um tipo de dados incorporado no Python. Um dicionário é uma sequência de pares chave-valor. Os dicionários são objetos mutáveis, no entanto, as chaves do dicionário são imutáveis e precisam ser únicas dentro de cada dicionário. Não há um método embutido para adicionar, mas existem várias maneiras de adicionar e atualizar um dicionário. Neste artigo, você usará o operador de atribuição do Python, o método update() e os operadores de mesclagem e atualização de dicionário para adicionar e atualizar dicionários em Python.

Implante suas aplicações Python do GitHub usando Plataforma de Aplicativos DigitalOcean. Deixe a DigitalOcean cuidar da escalabilidade do seu aplicativo.

Quatro Métodos para Adicionar ao Dicionário Python

  1. Usando o Operador de Atribuição
  2. Usando o Método Update
  3. Usando o Operador de Fusão
  4. Usando o Operador de Atualização

Adicionando ao Dicionário Python Usando o Operador de Atribuição =

Você pode usar o operador de atribuição = para adicionar uma nova chave a um dicionário:

dict[key] = value

Se uma chave já existe no dicionário, então o operador de atribuição atualiza, ou sobrescreve, o valor.

O exemplo a seguir demonstra como criar um novo dicionário e depois usar o operador de atribuição = para atualizar um valor e adicionar pares chave-valor:

dict_example = {'a': 1, 'b': 2}

print("original dictionary: ", dict_example)

dict_example['a'] = 100  # chave existente, sobrescrever
dict_example['c'] = 3  # nova chave, adicionar
dict_example['d'] = 4  # nova chave, adicionar

print("updated dictionary: ", dict_example)

A saída é:

Output
original dictionary: {'a': 1, 'b': 2} updated dictionary: {'a': 100, 'b': 2, 'c': 3, 'd': 4}

A saída mostra que o valor de a é sobrescrito pelo novo valor, o valor de b permanece inalterado, e novos pares chave-valor são adicionados para c e d.

Adicionar ao Dicionário Python Sem Sobrescrever Valores

O uso do operador de atribuição = sobrescreve os valores das chaves existentes com os novos valores. Se você souber que seu programa pode ter chaves duplicadas, mas não quiser sobrescrever os valores originais, então você pode adicionar valores condicionalmente usando uma instrução if.

Continuando com o exemplo da seção anterior, você pode usar instruções if para adicionar apenas novos pares chave-valor ao dicionário:

dict_example = {'a': 1, 'b': 2}

print("original dictionary: ", dict_example)

dict_example['a'] = 100  # chave existente, sobrescrever
dict_example['c'] = 3  # nova chave, adicionar
dict_example['d'] = 4  # nova chave, adicionar 

print("updated dictionary: ", dict_example)

# adicione as seguintes instruções if

if 'c' not in dict_example.keys():
    dict_example['c'] = 300

if 'e' not in dict_example.keys():
    dict_example['e'] = 5

print("conditionally updated dictionary: ", dict_example)

A saída é:

Output
original dictionary: {'a': 1, 'b': 2} updated dictionary: {'a': 100, 'b': 2, 'c': 3, 'd': 4} conditionally updated dictionary: {'a': 100, 'b': 2, 'c': 3, 'd': 4, 'e': 5}

A saída mostra que, devido à condição if, o valor de c não mudou quando o dicionário foi atualizado condicionalmente.

Adicionar ao Dicionário Python Usando o Método update()

Você pode adicionar um dicionário ou um iterável de pares chave-valor a um dicionário usando o método update(). O método update() sobrescreve os valores das chaves existentes com os novos valores.

O exemplo a seguir demonstra como criar um novo dicionário, usar o método update() para adicionar um novo par chave-valor e um novo dicionário, e imprimir cada resultado:

site = {'Website':'DigitalOcean', 'Tutorial':'How To Add to a Python Dictionary'}
print("original dictionary: ", site)

# atualize o dicionário com o par chave-valor do autor
site.update({'Author':'Sammy Shark'})
print("updated with Author: ", site)

# crie um novo dicionário
guests = {'Guest1':'Dino Sammy', 'Guest2':'Xray Sammy'}

# atualize o dicionário original com o novo dicionário
site.update(guests)
print("updated with new dictionary: ", site)

A saída é:

Output
original dictionary: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary'} updated with Author: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy Shark'} updated with new dictionary: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy Shark', 'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'}

A saída mostra que a primeira atualização adiciona um novo par chave-valor e a segunda atualização adiciona os pares chave-valor do dicionário guest ao dicionário site. Note que se sua atualização em um dicionário incluir uma chave existente, então o valor antigo é sobrescrito pela atualização.

Adicionar ao Dicionário Python Usando o Operador de Mesclagem |

Você pode usar o operador de mesclagem de dicionário |, representado pelo caractere de pipe, para mesclar dois dicionários e retornar um novo objeto de dicionário.

O exemplo a seguir demonstra como criar dois dicionários e usar o operador de mesclagem para criar um novo dicionário que contém os pares chave-valor de ambos:

site = {'Website':'DigitalOcean', 'Tutorial':'How To Add to a Python Dictionary', 'Author':'Sammy'}

guests = {'Guest1':'Dino Sammy', 'Guest2':'Xray Sammy'}

new_site = site | guests

print("site: ", site)
print("guests: ", guests)
print("new_site: ", new_site)

A saída é:

Output
site: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy'} guests: {'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'} new_site: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy', 'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'}

Os dois dicionários foram mesclados em um novo objeto de dicionário que contém os pares chave-valor de ambos os dicionários.

Se uma chave existir em ambos os dicionários, então o valor do segundo dicionário, ou operando à direita, é o valor utilizado. No código de exemplo a seguir, ambos os dicionários têm uma chave chamada b:

dict1 = {'a':'one', 'b':'two'}
dict2 = {'b':'letter two', 'c':'letter three'}

dict3 = dict1 | dict2

print{"dict3: ", dict3}

A saída é:

Output
dict3: {'a': 'one', 'b': 'letter two', 'c': 'letter three'}

O valor da chave b foi sobrescrito pelo valor do operando à direita, dict2.

Adicionar ao Dicionário Python Usando o Operador de Atualização |=

Você pode usar o operador de atualização de dicionário |=, representado pelos caracteres de barra vertical e sinal de igual, para atualizar um dicionário no local com o dicionário ou valores fornecidos.

Assim como o operador de mesclagem |, se uma chave existir em ambos os dicionários, então o operador de atualização |= utiliza o valor do operando à direita.

O exemplo a seguir demonstra como criar dois dicionários, usar o operador de atualização para anexar o segundo dicionário ao primeiro, e depois imprimir o dicionário atualizado:

site = {'Website':'DigitalOcean', 'Tutorial':'How To Add to a Python Dictionary', 'Author':'Sammy'}

guests = {'Guest1':'Dino Sammy', 'Guest2':'Xray Sammy'}

site |= guests

print("site: ", site)

A saída é:

Output
site: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy', 'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'}

Na exemplo anterior, você não precisou criar um terceiro objeto de dicionário, porque o operador de atualização modifica o objeto original. A saída mostra que o dicionário guests foi anexado ao dicionário original site.

Conclusão

Neste artigo, foram utilizados diferentes métodos para adicionar e atualizar um dicionário em Python. Continue seu aprendizado com mais tutoriais de Python.

Source:
https://www.digitalocean.com/community/tutorials/python-add-to-dictionary