Eliminar elemento del conjunto en Python
-
Eliminar un solo elemento de un conjunto con la función
remove()
en Python -
Eliminar un solo elemento de un conjunto con la función
discard()
en Python -
Eliminar varios elementos de un conjunto con el operador
-
en Python -
Eliminar varios elementos de un conjunto con la función
difference()
en Python -
Eliminar varios elementos de un conjunto con la función
difference_update()
en Python
Este tutorial discutirá diferentes métodos para eliminar elementos de un conjunto en Python.
Eliminar un solo elemento de un conjunto con la función remove()
en Python
La función set.remove()
en Python se usa con un conjunto para eliminar un elemento específico del conjunto de llamadas. La función remove()
toma el elemento a eliminar como argumento y elimina el elemento especificado del conjunto de llamadas. Si el elemento no se encuentra dentro del conjunto de llamadas, la función remove()
genera la excepción KeyError
. Vea el siguiente ejemplo de código.
set1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
set1.remove(5)
print(set1)
Producción :
{0, 1, 2, 3, 4, 6, 7, 8, 9}
Eliminamos el elemento 5
de set1
con la función remove(5)
en el código anterior. El escenario en el que el valor especificado no está presente en el conjunto de llamadas se muestra en el siguiente ejemplo de codificación.
set1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
set1.remove(51)
print(set1)
Producción :
KeyError Traceback (most recent call last)
<ipython-input-1-841e997b50f3> in <module>()
1 #remove()
2 set1 = {1,2,3,4,5,6,7,8,9,0}
----> 3 set1.remove(51)
4 print(set1)
KeyError: 51
Intentamos eliminar el valor 51
de set1
en el código anterior. Como no hay ningún valor 51
presente en set1
, la función remove()
genera un KeyError
.
Eliminar un solo elemento de un conjunto con la función discard()
en Python
La función discard()
es muy similar a la función remove()
. También se puede usar para eliminar solo un elemento de un conjunto en Python. La función discard()
toma el elemento a eliminar como parámetro de entrada y lo elimina del conjunto de llamada si el valor está presente en ese conjunto en particular. La única diferencia es que la función discard()
no genera un KeyError
si el valor no está presente en el conjunto de llamadas. El siguiente fragmento de código nos muestra cómo eliminar un solo elemento de un conjunto con la función discard()
.
set1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
set1.discard(5)
print(set1)
Producción :
{0, 1, 2, 3, 4, 6, 7, 8, 9}
Eliminamos el valor 5
de set1
con la función discard()
en el código anterior. Como se discutió anteriormente, si intentamos pasar un valor a la función discard()
que no está presente en el set1
, el código se ejecuta con éxito y el intérprete no genera ninguna excepción. Este fenómeno se demuestra en el siguiente ejemplo de codificación.
set1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
set1.discard(51)
print(set1)
Producción :
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Intentamos eliminar 51
de set1
con la función discard()
en el código anterior. El código se ejecuta correctamente porque el valor especificado no existe en set1
y no se elimina ningún elemento de set1
.
Eliminar varios elementos de un conjunto con el operador -
en Python
Podemos usar el operador -
que se usa para realizar la operación de establecer diferencias en Python. El operador -
elimina todos los elementos del conjunto derecho del conjunto izquierdo y devuelve el resultado en forma de otro conjunto. Este método no genera ninguna excepción si los elementos del conjunto izquierdo no están presentes en el conjunto derecho y devuelve el conjunto derecho como resultado. El siguiente fragmento de código nos muestra cómo eliminar varios elementos de un conjunto con el operador -
.
set1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
set2 = {2, 4, 6, 8, 0}
set1 = set1 - set2
print(set1)
Producción :
{1, 3, 5, 7, 9}
Eliminamos todos los elementos de set2
de set1
con el operador -
y almacenamos el conjunto resultante en set3
en el código anterior. El siguiente ejemplo de código demuestra el escenario en el que tanto set1
como set2
tienen valores únicos.
set1 = {1, 3, 5, 7, 9}
set2 = {2, 4, 6, 8, 0}
set1 = set1 - set2
print(set1)
Producción :
{1, 3, 5, 7, 9}
Como se discutió anteriormente, si todos los elementos del conjunto del lado derecho no están presentes en el conjunto del lado izquierdo, el código se ejecuta con éxito y el operador -
devuelve el conjunto del lado izquierdo como el conjunto resultante.
Eliminar varios elementos de un conjunto con la función difference()
en Python
En la diferencia de conjuntos, eliminamos todos los elementos de un conjunto de otro conjunto. En Python, la función set.difference()
se utiliza para realizar la operación de diferencia de conjuntos. El funcionamiento de esta función diferencia()
es el mismo que el del operador -
. Toma el conjunto que se va a eliminar como parámetro de entrada, elimina todos sus elementos del conjunto de llamada y devuelve los resultados en forma de otro conjunto. Consulte el siguiente fragmento de código.
set1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
set2 = {2, 4, 6, 8, 0}
set1 = set1.difference(set2)
print(set1)
Producción :
{1, 3, 5, 7, 9}
Eliminamos todos los elementos de set2
de set1
con la función difference()
y almacenamos los resultados dentro de set3
en el código anterior. El escenario para la función diferencia()
donde todos los valores del conjunto de entrada no están presentes en el conjunto de llamada es el mismo que el operador -
.
Eliminar varios elementos de un conjunto con la función difference_update()
en Python
En las dos secciones anteriores, hemos discutido cómo eliminar varios elementos de un conjunto, y ambos enfoques implican un tercer conjunto en el que necesitamos almacenar los resultados. Este enfoque no requiere un nuevo conjunto para almacenar los resultados. Actualiza nuestro conjunto de llamadas y almacena los resultados dentro del conjunto de llamadas. La función difference_update()
toma el conjunto cuyos elementos deben eliminarse del conjunto de llamada como parámetro de entrada y elimina todos los elementos comunes del conjunto de llamada.
set1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
set2 = {2, 4, 6, 8, 0}
set1.difference_update(set2)
print(set1)
Producción :
{1, 3, 5, 7, 9}
Eliminamos todos los elementos de set2
de set1
y actualizamos set1
con el conjunto resultante usando la función difference_update()
en el código anterior. A diferencia de los dos métodos anteriores, no era necesario crear un nuevo conjunto solo para almacenar los resultados. En cambio, el resultado se insertó automáticamente en set1
.
La función difference_update()
es equivalente al operador -=
en Python.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn