6.1 Funções remove() e discard()
Conjuntos em Python oferecem várias formas de remover elementos. Abaixo vamos ver os métodos remove(), discard(), pop(), clear(), e também como usar o operador del para remover um conjunto completamente. Cada método tem suas particularidades e usos.
Os dois métodos mais comuns para remover elementos são remove() e discard().
Método remove()
O método remove() elimina o elemento especificado do conjunto. Se o elemento não existir no conjunto, ocorre um erro KeyError.
my_set = {1, 2, 3, 4, 5}
my_set.remove(3)
print(my_set) # Saída: {1, 2, 4, 5}
# Se o elemento não estiver no conjunto, ocorrerá um erro
my_set.remove(6) # KeyError: 6
Método discard()
O método discard() também remove o elemento especificado do conjunto, mas, ao contrário de remove(), não gera erro se o elemento não estiver no conjunto.
my_set = {1, 2, 3, 4, 5}
my_set.discard(3)
print(my_set) # Saída: {1, 2, 4, 5}
# Se o elemento não estiver no conjunto, não haverá erro
my_set.discard(6)
print(my_set) # Saída: {1, 2, 4, 5}
6.2 Funções pop() e clear()
Também usamos frequentemente funções como pop() e clear()
Método pop()
O método pop() remove e retorna um elemento aleatório do conjunto. Se o conjunto estiver vazio, ocorre um erro KeyError.
my_set = {1, 2, 3, 4, 5}
removed_element = my_set.pop()
print(removed_element) # Saída: Um dos elementos do conjunto, por exemplo, 1
print(my_set) # Saída: Os elementos restantes do conjunto, por exemplo, {2, 3, 4, 5}
# Se o conjunto estiver vazio, ocorrerá um erro
empty_set = set()
empty_set.pop() # KeyError: 'pop from an empty set'
Exemplo: Removendo todos os elementos de um conjunto usando pop()
O método pop() pode ser usado em um loop para remover todos os elementos de um conjunto, um por um, até que ele fique vazio.
my_set = {1, 2, 3, 4, 5}
print("Conjunto original:", my_set)
while my_set:
removed_element = my_set.pop()
print(f"Elemento removido: {removed_element}, Elementos restantes: {my_set}")
print("Conjunto vazio:", my_set)
Saída
Conjunto original: {1, 2, 3, 4, 5}
Elemento removido: 1, Elementos restantes: {2, 3, 4, 5}
Elemento removido: 2, Elementos restantes: {3, 4, 5}
Elemento removido: 3, Elementos restantes: {4, 5}
Elemento removido: 4, Elementos restantes: {5}
Elemento removido: 5, Elementos restantes: set()
Conjunto vazio: set()
Método clear()
O método clear() remove todos os elementos do conjunto, deixando-o vazio.
Exemplo
my_set = {1, 2, 3, 4, 5}
my_set.clear()
print(my_set) # Saída: set()
6.3 Usando o operador del
O operador del em Python é usado para deletar objetos. Ao trabalhar com conjuntos, o operador del pode ser usado para remover todo o conjunto, liberando memória. Abaixo estão alguns exemplos de uso do operador del para trabalhar com conjuntos.
Removendo um conjunto
Quando o operador del é usado para remover um conjunto, este conjunto deixa de existir, e todos os seus elementos são removidos da memória.
my_set = {1, 2, 3, 4, 5}
print("Conjunto original:", my_set)
# Removendo o conjunto
del my_set
# Tentar acessar o conjunto removido causará um erro
# print(my_set) # NameError: name 'my_set' is not defined
Neste exemplo, o conjunto my_set é removido usando o operador del. Depois disso, qualquer tentativa de acessar my_set causará um erro NameError, porque o objeto não existe mais.
GO TO FULL VERSION