¿Qué puedes hacer con set.issubset() en Python?

| Última modificación: 2 de enero de 2025 | Tiempo de Lectura: 3 minutos

La versatilidad de los conjuntos en Python hace que tengamos infinidad de opciones y métodos para trabajar con ellos. Uno de los métodos más sonados dentro de este ámbito es el de set.issubset(), que te permite verificar si un conjunto está completamente contenido dentro de otro. El día de hoy queremos contarte de qué va este método y cómo puedes usarlo.

¿Qué es set.issubset()?

El método set.issubset() dentro de Python nos permite comprobar si todos los elementos de un conjunto están presentes en otro. Si es así, devuelve True; en caso contrario, devuelve False. Esta es una forma de verificar las relaciones entre conjuntos muy usada y su sintaxis básica es:

set.issubset(set1)

También puedes usar el operador <= como atajo, lo que hace que el código sea más compacto pero igual de funcional.

Ejemplo

Veamos un ejemplo que nos ayudará a entender mejor:

x = {"a", "b", "c"}
y = {"f", "e", "d", "c", "b", "a"}

z = x.issubset(y)

print(z) # Resultado: True

En este ejemplo, el conjunto x está completamente contenido en y, por lo que el método devuelve True.

  • ¿Qué pasa si no todos los elementos están en el segundo conjunto?

Si algunos elementos de x no están en y, el resultado será False:

x = {"a", "b", "c"}
y = {"f", "e", "d", "c", "b"}

z = x.issubset(y)

print(z) # Resultado: False

🔴 ¿Quieres Aprender a Programar con Python? 🔴

Descubre el Full Stack Jr. Bootcamp - Aprende a Programar desde Cero de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp Aprende a Programar desde Cero por una semana

Aquí falta el elemento “a” en el conjunto y, por lo que el método devuelve False.

Uso del operador <= como atajo

El método set.issubset() tiene un equivalente más breve cuando usamos el operador <=. Veamos un ejemplo:

x = {"a", "b", "c"}
y = {"f", "e", "d", "c", "b", "a"}

z = x <= y

print(z) # Resultado: True

Ambos enfoques son equivalentes, pero usar el operador puede ser más práctico en ciertas situaciones.

¿En qué contextos podemos usar el set.issubset() en Python?

  • Validación de permisos: Si tienes un sistema que maneja roles y permisos, puedes hacer uso de set.issubset() para verificar si un usuario tiene todos los permisos que necesita. Puedes hacerlo así:
required_permissions = {"read", "write", "execute"}
user_permissions = {"read", "write", "execute", "admin"}

has_access = required_permissions.issubset(user_permissions)

print(has_access) # Resultado: True
  • Filtrado de datos: Con este método podemos comprobar si un subconjunto de datos cumple ciertos criterios específicos. Por ejemplo:
criteria = {"vegan", "gluten-free"}
dish_ingredients = {"vegan", "gluten-free", "organic"}

is_suitable = criteria.issubset(dish_ingredients)

print(is_suitable) # Resultado: True
  • Comparación de grupos: Puedes usarlo para analizar relaciones entre diferentes conjuntos, como identificar si un grupo está contenido dentro de otro:
team_a = {"Alice", "Bob"}
team_b = {"Alice", "Bob", "Charlie", "Diana"}

is_subset = team_a.issubset(team_b)

print(is_subset) # Resultado: True

set.issubset() y otros métodos: ¿cuáles son las diferencias?

En términos de comprobación de conjuntos, set.issubset() no es el único método que funciona, puedes elegir entre una amplia gama para saber cuál te sirve más:


Método
DescripciónEjemploResultado esperado
set.issubset()Comprueba si todos los elementos de un conjunto están en otro.{"a", "b"}.issubset({"a", "b", "c"})True
set.issuperset()Verifica si un conjunto contiene todos los elementos de otro.{"a", "b", "c"}.issuperset({"a", "b"})True
set.intersection()Devuelve los elementos comunes entre dos conjuntos.{"a", "b"} & {"b", "c"}{"b"}
set.difference()Devuelve los elementos del primer conjunto que no están en el segundo.{"a", "b", "c"} - {"b", "c"}{"a"}

Si te interesa la programación y quieres seguir aprendiendo sobre temáticas similares a estas y probar hacer tus propios programas con los lenguajes de programación de vanguardia, no dudes en unirte a nuestro bootcamp de programación desde cero, en donde aprenderás todo lo necesario para incursionar en el mercado laboral de forma fácil y rápida. ¡Apúntate ahora y sigue construyendo un futuro brillante!

Posts más leídos

¡CONVOCATORIA ABIERTA!

Aprende a programar desde cero

Full Stack JR. Bootcamp

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