Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Por que utilizar del como um statement ?

Alguém sabe por que otpou-se por del como statement e não como um método dos objetos? A utilização do del como statement não remete a linguagem estruturada ?

2 respostas
solução!

Olá, Bruno. Tudo bem?

Como você pontuou, o del é um statement do Python, ou seja, ele não é um método do tipo dicionário. Os statements são comandos ou instruções que o interpretador do Python pode executar.

O del é utilizado para excluir todo tipo de objetos, e como no Python tudo é um objeto, ele pode ser usado para deletar variáveis, listas, dicionários, partes de listas ou de dicionários, etc.

O uso do del não remete necessariamente a programação estruturada, podendo ser usado em outros padrões de programação, como na orientação a objetos. Podemos pensar no del como sendo o inverso da atribuição feita pelo =. Assim enquanto usamos o = quando declaramos uma nova variável e queremos atribuir algum valor a ela, usamos o del quando queremos excluir uma variável e limpar o seu valor da memória.

Uma outra forma de remover elementos de um dicionário é por meio do método .pop(). Esse método exclui o elemento referente a chave que é passada como parâmetro e retorna o valor do elemento que foi removido. Um exemplo de como o método .pop() funciona pode ser visto a seguir:

dicionario = {
    'chaveA' : 1,
    'chaveB' : 2
}

elemento_removido = dicionario.pop('chaveB')
print("O elemento removido foi", elemento_removido)

Saída do código: O elemento removido foi 2

As duas formas de remoção de elementos de um dicionário são bem comuns e a principal diferença entre elas é que geralmente:

  • Usamos o método .pop quando queremos guardar o valor do elemento removido. Como por exemplo:
    elemento = dicionario.pop('chaveA')
  • Usamos o del quando queremos somente excluir um elemento.

É importante ressaltar que caso o elemento passado para o del não exista no dicionário, é retornado um erro.

Já com o método .pop() podemos definir um valor de retorno caso a chave não exista no dicionário, evitando assim um erro. A sintaxe dessa definição é a seguinte: dicionario.pop('chave', 'retorno caso a chave não exista').

Um exemplo disso pode ser visto a seguir:

dicionario = {
    'chaveA' : 1,
    'chaveB' : 2
}

print(dicionario.pop('chaveC', 'Elemento não encontrado'))

Saída do código: Elemento não encontrado

Caso você queira se aprofundar no estudo sobre dicionários, deixo como recomendação a leitura de um artigo aqui da Alura sobre dicionários, que mostra os principais métodos dos dicionários em Python:

Espero ter ajudado. Qualquer outra dúvida estou a disposição.

Abraços. Bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Muito obrigado pela resposta! Foi muito didática.