Verificar con el operador <=
En el paso anterior, aprendiste cómo utilizar el método issubset() para verificar si un conjunto es un subconjunto de otro. En este paso, aprenderás una forma alternativa de verificar subconjuntos utilizando el operador <=.
El operador <= se puede utilizar para verificar si un conjunto es un subconjunto de otro. Devuelve True si el conjunto del lado izquierdo es un subconjunto del conjunto del lado derecho, y False en caso contrario.
Volvamos al ejemplo de habilidades del paso anterior:
skills1 = {"Python", "Data Analysis"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}
Queremos verificar si skills1 es un subconjunto de skills2 utilizando el operador <=.
Abre el archivo subset_check.py en el directorio ~/project utilizando VS Code. Modifica el contenido del archivo para que sea el siguiente:
skills1 = {"Python", "Data Analysis"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}
is_subset = skills1 <= skills2
print(is_subset)
Guarda el archivo.
Ahora, ejecuta el script utilizando el comando python en la terminal:
python subset_check.py
La salida será:
True
Esto indica que skills1 es de hecho un subconjunto de skills2.
Consideremos otro escenario en el que skills1 no es un subconjunto de skills2:
Modifica el archivo subset_check.py para que sea el siguiente:
skills1 = {"Python", "Data Analysis", "Cloud Computing"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}
is_subset = skills1 <= skills2
print(is_subset)
Guarda el archivo y ejecútalo de nuevo:
python subset_check.py
La salida será:
False
Esto se debe a que skills1 contiene "Cloud Computing", que no está presente en skills2. Por lo tanto, skills1 no es un subconjunto de skills2.
Es importante tener en cuenta que el operador <= también devuelve True si los dos conjuntos son iguales. Por ejemplo:
set1 = {1, 2, 3}
set2 = {1, 2, 3}
is_subset = set1 <= set2
print(is_subset)
La salida será True porque set1 y set2 son iguales. Si quieres verificar si set1 es un subconjunto propio de set2 (es decir, set1 es un subconjunto de set2 pero no es igual a set2), puedes utilizar el operador < en su lugar.