Igualdad de dos conjuntos en Python

| Última modificación: 15 de julio de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

Decimos que existe una igualdad de dos conjuntos en Python cuando ambos conjuntos, tanto A como B, tienen los mismos elementos:

A = B ⇒ A ⊂ B y B ⊂ A

Igualdad de dos conjuntos en Python

Ejercicio

Veamos un ejercicio sobre la igualdad de dos conjuntos en Python. ¿El conjunto A = {x / x es un entero par; 0 < x < 6} y B = {2, 4} son iguales?

Lo primero que haremos para resolver este ejercicio de igualdad de dos conjuntos en Python será importar la librería numpy para trabajar con números, solo en caso de que nos la pida el sistema. Ahora lo que haremos será definir el conjunto B, que es el más sencillo.

En segunda instancia definiremos el conjunto A, que no es más que {x entre x es un entero par de cero a 6}. ¿Esto qué quiere decir? Pues que tenemos una lista que va de cero a seis y que los elementos de este conjunto son un entero par. ¿Cómo convertimos esto en un entero par? Bien, en nuestro ejercicio de igualdad de dos conjuntos en Python vamos a verificar que sea un entero par del siguiente modo: si el resto o residuo de coger un número y dividirlo entre dos es igual a 0, el número es un par.

Nos dice que el número debe ser entero. Tenemos que crear una lista de números. Para crear esta lista de números sobre la que vamos a iterar, usamos el np.arrange. El np.arrange en la igualdad de dos conjuntos en Python lo que hará será definir si el número de 1 a 6 (sin incluir el 6) cabe en el resultado también.

#igualdad de dos conjuntos en Python
import numpy as np
B = {2, 4}

A = {x for x in np.arange (1, 6, 1) if x % 2 == 0}

Imprimimos los dos conjuntos:

#igualdad de dos conjuntos en Python
print (A)
print (B)

{2, 4}

{2, 4}

Podemos comprobar que ambos conjuntos son iguales del siguiente modo:

A == B

Veamos otras formas de trabajar con conjuntos en Python.

Suma

La suma de conjuntos es exactamente igual que la suma de enteros o de cualquier otro tipo de valor.

Al igual que con las listas, podemos realizar la suma de sus elementos usando sum:

set_ex = {10, 20, 10, 50}
print (set_ex)

{10, 20, 50}

Veamos si sumamos todo cuánto nos debería dar:

sum (set_ex)

80

Unión

La unión de dos conjuntos A y B es un nuevo conjunto que contiene los elementos que pertenecen a A y/o a B.

A ∪ B = {x / x ∈ A o x ∈ B}

Hay distintas formas de notar esto en Python; una es con la barra vertical.

{3, 4, 5} l {5, 6, 8}

Si imprimimos esto, nos debería dar como resultado un conjunto que contenga todos los valores, tanto del primer conjunto como del segundo.

{3, 4, 5, 6, 8}

En efecto, nos da el resultado esperado. Recordemos que en estas operaciones solo obtenemos los valores únicos, por tanto el 5 solo nos aparece una vez.

Podemos realizarla de esta forma:

a = {3, 4, 5}
b = {5, 6, 8}
a.union (b)

{3, 4, 5, 6, 8}

Intersección de conjuntos

La intersección de conjuntos A y B es un nuevo conjunto que contiene los elementos que pertenecen a A y a B (a ambos a la vez).

A ∩ B = {x / x ∈ A y x ∈ B}

a

{3, 4, 5}

b

{5, 6, 8}

a.intersection (b)

{5}

También podemos realizar la intersección de esta forma:

a & b

{5}

Si A ∩ B = , entonces A y B son conjuntos disjuntos o ajenos, es decir, no tienen ningún elemento en común.

{3, 4, 5} & {6, 7}

set ()

Propiedades de la unión y la intersección

Sean A, B y C subconjuntos cualesquiera de un conjunto universal E, se tiene:

Uniforme

Dados A y B, tanto A ∪ B como A ∩ B existen y son únicos.

Conmutativas

A ∪ B = B ∪ A

A ∩ B = B ∩ A

Asociativas

A ∪ (B ∪ C) = (A ∪ B) ∪ C

A ∩ (B ∩ C) = (A ∩ B) ∩ C

Idempotencia

A ∪ A = A

A ∩ A = A

Elemento neutro

A ∪ ∅ = A

A ∩ E = A

Absorción

A ∪ (A ∩ B) = A

A ∩ (A ∪ B) = A

Distributivas

A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C)

A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C)

Para seguir aprendiendo sobre Big Data, una de las disciplinas más demandadas de la actualidad, tenemos el Bootcamp de Big Data y Data Science, una formación intensiva e íntegra en la que podrás adquirir todos los conocimientos teóricos y prácticos imprescindibles para incursionar en el mercado laboral de forma rápida y eficiente. ¿Quieres cambiar tu futuro y convertirte en un data scientist de gran éxito? ¡Entra ahora y solicita más información!

Sandra Navarro

Business Intelligence & Big Data Advisor & Coordinadora del Bootcamp en Data Science, Big Data & Machine Learning.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Big Data, IA & Machine Learning

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado