Executando verificação de segurança...
1

Complementando, alguns detalhes sobre as formas de remover.


Se a chave não existir, del e pop lançam uma exceção (KeyError):

times = {"vasco da gama": "Rio de Janeiro",
         "sport": "Recife",
         "Palmeiras": "São Paulo"} # Cria o dicionário

del times["tabajara"] # KeyError (chave "tabajara" não existe)

# ou
times.pop("tabajara") # KeyError (chave "tabajara" não existe)

Mas o método pop permite que se use um valor default, caso a chave não seja encontrada:

times = {"vasco da gama": "Rio de Janeiro",
         "sport": "Recife",
         "Palmeiras": "São Paulo"} # Cria o dicionário

removido = times.pop("tabajara", 'não tem') # chave "tabajara" não existe, então retorna "não tem"
print(removido) # "não tem"

Aliás, essa é outra diferença entre pop e del: o método pop, além de remover, também retorna o valor removido.

times = {"vasco da gama": "Rio de Janeiro",
         "sport": "Recife",
         "Palmeiras": "São Paulo"} # Cria o dicionário

removido = times.pop("sport") # remove, e retorna o valor que foi removido
print(removido) # "Recife"

Já o del não retorna nada, tanto que se fizer removido = del times['sport'] dará erro.


Por fim, popitem também retorna o que foi removido, a diferença é que ele retorna uma tupla contendo a chave e o valor:

times = {"vasco da gama": "Rio de Janeiro",
         "sport": "Recife",
         "Palmeiras": "São Paulo"} # Cria o dicionário

removido = times.popitem()
print(removido) # ('Palmeiras', 'São Paulo')

E caso o dicionário esteja vazio, popitem lança um KeyError.


Para mais detalhes, consulte a documentação oficial da linguagem.

Carregando publicação patrocinada...
1

Obrigado por contribuir com a postagem, muito bem lembrando esse detalhe de que os valores removidos são retornados pelo método popitem() e pop(), eu até coloquei e isso no artigo completo, mas acabei deixando passar nesse snippet que coloquei aqui no TabNews.