Obtener la diferencia de conjuntos en Python
-
Encontrar la diferencia en conjuntos en Python usando el método
set.symmetric_difference()
-
Encontrar la diferencia entre conjuntos en Python usando el bucle
for
-
Encontrar la diferencia entre conjuntos en Python usando el operador
XOR
Este tutorial explicará las distintas formas de encontrar la diferencia entre dos conjuntos en Python. Con la diferencia, nos referimos a los elementos que no son comunes entre los dos conjuntos.
Por ejemplo:
set1 = set([1, 2, 3, 4, 5, 6])
set2 = set([2, 3, 6, 8])
La diferencia entre estos dos conjuntos debería ser 1,4,5,8
.
Encontrar la diferencia en conjuntos en Python usando el método set.symmetric_difference()
El método set.symmetric_difference()
toma otro conjunto como entrada y devuelve la diferencia entre ellos. El siguiente código de ejemplo explica cómo utilizar set.symmetric_difference()
para obtener los elementos que no son comunes en ambos conjuntos y obtener el conjunto de diferencia requerido.
set1 = set([1, 2, 3, 4, 5, 6])
set2 = set([2, 3, 6, 8])
diff_set = set1.symmetric_difference(set2)
print(diff_set)
Producción :
{1, 4, 5, 8}
Encontrar la diferencia entre conjuntos en Python usando el bucle for
Para encontrar la diferencia entre los dos conjuntos, podemos utilizar el bucle for
para iterar por ambos conjuntos y comprobar si existe el mismo elemento en el otro conjunto y añadirlo a la lista si son únicos. Y los elementos que existan en ambos conjuntos serán ignorados.
Código de ejemplo:
set1 = set([1, 2, 3, 4, 5, 6])
set2 = set([2, 3, 6, 8])
temp1 = [x for x in set1 if x not in set2]
temp2 = [x for x in set2 if x not in set1]
diff_set = set(temp1 + temp2)
print(diff_set)
Producción :
{8, 1, 4, 5}
Encontrar la diferencia entre conjuntos en Python usando el operador XOR
Una forma sencilla de encontrar la diferencia entre los conjuntos es aplicar la operación XOR
sobre ellos, y esto eliminará los elementos iguales y sólo devolverá los elementos que no sean iguales en ambos conjuntos como se requiere.
Para implementar esto en código, podemos utilizar el operador ^
entre dos conjuntos para obtener la diferencia de conjuntos deseada.
set1 = set([1, 2, 3, 4, 5, 6])
set2 = set([2, 3, 6, 8])
diff_set = set(set1) ^ set(set2)
print(diff_set)
Producción :
{1, 4, 5, 8}