Igualdad de dos conjuntos en Python

Autor: | Última modificación: 10 de enero de 2023 | Tiempo de Lectura: 3 minutos
Temas en este post: ,

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)

¿Qué sigue?

Para seguir aprendiendo sobre Big Data, una de las disciplinas más demandadas de la actualidad, tenemos el Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp, 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!

👉 Descubre más del Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp ¡Descarga el temario!

👉 Prueba el Bootcamp Gratis por una Semana ¡Empieza ahora mismo!

👉 Conoce nuestros otros Bootcamps en Programación y Tecnología

[email protected]

¿Trabajo? Aprende a programar y consíguelo.

¡No te pierdas la próxima edición del Aprende a Programar desde Cero Full Stack Jr. Bootcamp!

 

Prepárate en 4 meses, aprende las últimas tecnologías y consigue trabajo desde ya. 

 

Solo en España hay más de 120.400 puestos tech sin cubrir, y con un sueldo 11.000€ por encima de la media nacional. ¡Es tu momento!

 

🗓️ Próxima edición: 13 de febrero

 

Reserva tu plaza descubre las becas disponibles.