Como Adicionar a um Dicionário em Python

Introdução

Um dicionário é um tipo de dado embutido em 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 Mesclagem
  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á existir 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 de 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 de chave-valor são adicionados para c e d.

Adicionar ao Dicionário Python Sem Sobrescrever Valores

Usando o operador de atribuição = sobrescreve os valores das chaves existentes com os novos valores. Se você sabe que seu programa pode ter chaves duplicadas, mas não quer sobrescrever os valores originais, então você pode adicionar condicionalmente valores usando um comando if.

Continuando com o exemplo da seção anterior, você pode usar comandos 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 os seguintes comandos 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)

O resultado é:

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}

O resultado 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()

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)

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

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

# atualizar 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 a sua atualização a 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 tubo, para mesclar dois dicionários e retornar um novo objeto de dicionário.

O seguinte exemplo 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 existe em ambos os dicionários, então o valor do segundo dicionário, ou operando direito, é o valor adotado. 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 direito, dict2.

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

Você pode usar o operador de atualização do 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 existe em ambos os dicionários, então o operador de atualização |= adota o valor do operando direito.

O exemplo a seguir demonstra como criar dois dicionários, usar o operador de atualização para anexar o segundo dicionário ao primeiro dicionário e, em seguida, 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'}

No 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 adicionado ao dicionário original site.

Conclusão

Neste artigo, você usou diferentes métodos para adicionar e atualizar um dicionário Python. Continue sua aprendizagem com mais tutoriais de Python.

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