Como remover itens de um dicionário em Python
Está em dúvidas de como remover um item de um dicionário em Python? Veja esse artigo rápido e aprenda de uma vez por todas como fazer isso.
Em Python
dicionários são uma estrutura de dados que armazenam informações da forma chave-valor.
No exemplo abaixo, temos um dicionário com as informações de alguns times do Brasil e sua determinada cidade.
times = {"vasco da gama": "Rio de Janeiro",
"sport": "Recife",
"Palmeiras": "São Paulo"}
Caso queira aprender tudo sobre dicionários, veja esse guia completo sobre dicionários em Python.
Como remover itens de um dicionário?
Existem quatro formas padrões de se remover um item de um dicionário em Python
, são elas:
clear()
del
pop()
popitem()
Método clear
O método clear
é utilizado quando desejamos limpar um dicionário, isso é, remover todos os seus registros.
No exemplo abaixo, criamos um dicionário com os clubes e suas respectivas cidades, exibimos isso na tela e após isso limpamos o dicionário e exibimos novamente.
times = {"vasco da gama": "Rio de Janeiro",
"sport": "Recife",
"Palmeiras": "São Paulo"} # Cria o dicionário
print(times) # Exibe na tela
times.clear() # Limpa o dicionário
print(times) # Exibe na tela
A saída será:
{"vasco da gama": "Rio de Janeiro", "sport": "Recife", "Palmeiras": "São Paulo"}
{}
Método pop
Para remover apenas um item do dicionário podemos utilizar o método pop()
.
O método pop recebe como argumento a chave do item que será removido do dicionário.
No exemplo abaixo apenas o item "sport": "Recife"
será removido:
times = {"vasco da gama": "Rio de Janeiro",
"sport": "Recife",
"Palmeiras": "São Paulo"} # Cria o dicionário
print(times) # Exibe na tela
times.pop("sport") # Remove o item da chave "sport"
print(times) # Exibe na tela
A saída será:
{"vasco da gama": "Rio de Janeiro", "sport": "Recife", "Palmeiras": "São Paulo"}
{"vasco da gama": "Rio de Janeiro", "Palmeiras": "São Paulo"}
O método pop
além de eliminar o registro ele retorna o valor associado a essa chave, essa propriedade é bem útil em
alguns casos onde elimina a necessidade de resgatar o valor antes de excluí-lo.
capitais = {"São Paulo": "São Paulo",
"Bahia": "Salvador",
"Goiás": "Goiânia"}
print(capitais)
# {'São Paulo': 'São Paulo', 'Bahia': 'Salvador', 'Goiás': 'Goiânia'}
valor = capitais.pop("Bahia")
print(valor)
# Salvador
print(capitais)
# {'São Paulo': 'São Paulo', 'Goiás': 'Goiânia'}
A saída será:
{'São Paulo': 'São Paulo', 'Bahia': 'Salvador', 'Goiás': 'Goiânia'}
Salvador
{'São Paulo': 'São Paulo', 'Goiás': 'Goiânia'}
Instrução del
A instrução del
funciona semelhantemente ao método pop()
, removendo o item pela sua chave.
O exemplo abaixo utiliza a instrução del
para remover o item "sport": "Recife"
:
times = {"vasco da gama": "Rio de Janeiro",
"sport": "Recife",
"Palmeiras": "São Paulo"} # Cria o dicionário
print(times) # Exibe na tela
del times["sport"] # Remove o item da chave "sport"
print(times) # Exibe na tela
A saída será:
{"vasco da gama": "Rio de Janeiro", "sport": "Recife", "palmeiras": "São Paulo"}
{"vasco da gama": "Rio de Janeiro", "Palmeiras": "São Paulo"}
Método popitem
O método popitem()
remove o último item do dicionário.
No exemplo abaixo, o último item do dicionário é "palmeiras": "São Paulo"
, por isso esse será o item removido:
times = {"vasco da gama": "Rio de Janeiro",
"sport": "Recife",
"palmeiras": "São Paulo"} # Cria o dicionário
print(times) # Exibe na tela
times.popitem() # Remove o último item o dicionário
print(times) # Exibe na tela
A saída será:
{"vasco da gama": "Rio de Janeiro", "sport": "Recife", "palmeiras": "São Paulo"}
{"vasco da gama": "Rio de Janeiro", "sport": "Recife"}
O método popitem
além de exclui o último registro adicionado ao dicionário ele retorna uma tupla com a chave e o valor, nessa
ordem.
capitais = {"São Paulo": "São Paulo",
"Bahia": "Salvador",
"Goiás": "Goiânia"}
print(capitais)
# {'São Paulo': 'São Paulo', 'Bahia': 'Salvador', 'Goiás': 'Goiânia'}
valor = capitais.popitem()
print(valor)
# ('Goiás', 'Goiânia')
print(capitais)
# {'São Paulo': 'São Paulo', 'Bahia': 'Salvador'}
A saída será:
{'São Paulo': 'São Paulo', 'Bahia': 'Salvador', 'Goiás': 'Goiânia'}
('Goiás', 'Goiânia')
{'São Paulo': 'São Paulo', 'Bahia': 'Salvador'}
Evitando erros
As 3 formas de excluir um registro do dicionário mostrado acima irá ocasionar um erro na hora de excluir um conjunto
caso a chave não esteja presente no dicionário. Para evitar isso podemos utilizar o atributo default
do método get
,
passando um valor que será retornado caso a chave não exista no objeto.
capitais = {"São Paulo": "São Paulo",
"Bahia": "Salvador",
"Goiás": "Goiânia"}
print(capitais)
# {'São Paulo': 'São Paulo', 'Bahia': 'Salvador', 'Goiás': 'Goiânia'}
valor = capitais.pop('Tocantins', 'Não encontrado')
print(valor)
# Não encontrado
print(capitais)
# {'São Paulo': 'São Paulo', 'Bahia': 'Salvador', 'Goiás': 'Goiânia'}
Conclusão
Remover itens de um dicionário é uma dúvida muito comum em quem começou a programar em Python
recentemente, se esse for seu caso, espero que esse artigo tenha sido útil para você.
Dicionário é uma estrutura de dados muito poderosa, recomendo ver esse artigo mostrando todas as possibilidades de um dicionário em Python.