El conjunto de Python es un literal único para filtrar valores distintos en una lista o una matriz de elementos. A diferencia de una lista, diccionario o tupla de Python, no acepta duplicados. Por tanto, puede ser una valiosa herramienta de limpieza de datos.
Pero, ¿cómo puedes crear un conjunto y usarlo en Python? Lo explicaremos en esta publicación.
Características de los conjuntos de Python
Además de no aceptar duplicados, un conjunto literal tiene otras características que lo diferencian de otros tipos de datos. Estas son algunas de sus características:
- Es inmutable: eso significa que no puede cambiar los valores de un conjunto una vez que lo crea.
- Un literal de conjunto devuelve una disposición dinámica cada vez que crea uno. En esencia, los elementos de un conjunto están desordenados.
- Debido a que presenta elementos desordenados, a diferencia de los literales de lista y diccionario, no puede obtener los valores de un conjunto por sus índices.
Cómo crear y usar un conjunto de Python
Ahora que conoce las características básicas de un conjunto de Python. Veamos algunas de las formas en que puede usarlo en su programa.
Utiliza llaves para crear un conjunto en Python. Entonces, un conjunto es una lista de elementos entre llaves separados por comas:
mySet = {1, 2, "MUO", "Google"}
imprimir (mySet)
Resultado: {1, 2, "MUO", "Google"}
También puede convertir cualquier otro tipo de datos en un conjunto. Por ejemplo, el siguiente código convierte una lista en un conjunto:
myList = [1, 2, "MUO", "Google"]
mySet = set (myList)
imprimir (mySet)
Resultado: {1, 2, "MUO", "Google"}
Para estar seguro, puede verificar el tipo de datos de mySet:
myList = [1, 2, "MUO", "Google"]
mySet = set (myList)
imprimir (tipo (mySet))
Producción:
Como mencionamos anteriormente, un conjunto no acepta duplicados. Esa función puede resultar útil cuando desee limpiar una matriz eliminando valores duplicados.
El siguiente código elimina los duplicados en una lista y presenta el resultado como un conjunto de Python:
myList = [1, 2, 2 "MUO", "MUO", "Google", "Google"]
mySet = set (myList)
imprimir (mySet)
Salida: {1, 2, 'MUO', 'Google'}
Para demostrar aún más la función de filtrado de un conjunto, cuando imprime la longitud de un conjunto, no cuenta los valores duplicados:
mySet = {1, 2, 2, "MUO", "MUO", "Google", "Google"}
imprimir (len (mySet))
Salida: 4
Para ver un mejor caso de uso de un conjunto, eliminemos los duplicados en la siguiente matriz. Es como consultar las claves únicas en una matriz.
Para hacer esto, convierta un diccionario en un conjunto:
myDiction = {
"Mango": 2, "Naranja": 2, "zanahoria": 2, "MUO": "tecnología",
"MUO": "web", "Google": "búsqueda", "Google": "motor"
}
UniqueSet = set (myDiction)
print ("Estas son las claves únicas: {}". formato (uniqueSet))
Resultado: estas son las claves únicas: {'Google', 'Mango', 'MUO', 'Naranja', 'zanahoria'}
La conversión anterior elimina automáticamente los elementos duplicados de la matriz.
Puedes modificar el código de arriba usando un bucle for para que quede más claro:
para únicos en uniqueSet:
imprimir (únicos)
También puede unir dos conjuntos con el Unión() método:
setA = {1, 3, 5}
setB = {1, 4, 6}
newSet = setA.union (setB)
imprimir (newSet)
Salida: {1, 3, 4, 5, 6}
Sin embargo, el código anterior une los dos conjuntos y elimina los valores duplicados.
Alternativamente, puede usar la tubería | función para unir conjuntos en Python:
setA = {1, 3, 5}
setB = {1, 4, 6}
newSet = setA | setB
imprimir (newSet)
Salida: {1, 3, 4, 5, 6}
También puede encontrar la diferencia entre dos conjuntos en Python:
setA = {1, 3, 5}
setB = {2, 4, 5,}
imprimir (setA.difference (setB))
Salida: {1, 3}
Puede encontrar la diferencia simétrica entre los conjuntos A y B. Este método devuelve los elementos de cualquier conjunto pero excluye sus intersecciones. Veamos cómo funciona esto:
setA = {1, 3, 5}
setB = {2, 4, 5,}
imprimir (setA ^ setB)
Salida: {1, 2, 3, 4}
Alternativamente, puede utilizar el diferencia_simétrica () método:
setA = {1, 3, 5}
setB = {2, 4, 5,}
imprimir (setA.diferencia_imétrica (setB))
Salida: {1, 2, 3, 4}
Veamos también cómo puede encontrar la intersección de conjuntos a continuación:
setA = {1, 3, 5}
setB = {1, 4, 6}
setC = {1, 5, 4}
newSet = setA.intersection (setB, setC)
imprimir (newSet)
Salida: {1}
Mientras puedas agregar a una lista en Python, no puede hacer lo mismo con un conjunto de Python. Sin embargo, puede agregar un elemento al final de un conjunto usando el agregar función.
Pero el Python agregar La función acepta un argumento, por lo que solo puede agregar una tupla a un conjunto. Esto devuelve un conjunto anidado:
setA = {1, 3, 5} setC = {1, 3}
newSet = 1, 6
setC.add (nuevoConjunto)
imprimir (setC)
Salida: {1, (1, 6), 3}
El conjunto de Python usa el isdisjoint () método para comprobar si dos conjuntos están desarticulados. Luego devuelve un booleano:
setA = {1, 3, 5}
setB = {1, 4, 6}
findDisjoint = setA.isdisjoint (setB)
print ("Es {} que setA es una disjunta de B" .format (findDisjoint))
Resultado: Es falso que setA sea una disjunta de B
Para comprobar si un conjunto es un subconjunto de otro, reemplace isdisjoint () con issubset ():
findSubset = setA.issubset (setB)
Puede eliminar un elemento de un conjunto:
setA = {1, 3, 5}
setA.remove (5)
imprimir (setA)
Salida: {1, 3}
los claro() El método borra los elementos de un conjunto y devuelve un conjunto vacío:
setA = {1, 3, 5}
setA.clear ()
imprimir (setA)
Salida: set ()
Puede eliminar un elemento arbitrario de un conjunto y devolver su valor utilizando el set.pop () método:
setA = {1, 3, 5}
imprimir (setA.pop ())
También puede actualizar un conjunto de Python con el método update ():
setA = {1, 'b'}
setB = {2, 4, 5,}
imprimir (setA.update (setB))
imprimir (setA)
Salida: {1, 2, 4, 5, 'b'}
Juega con conjuntos de Python
Aunque hemos visto cómo puede usar un conjunto en Python, todavía hay otras formas prácticas de aplicarlo en su código. Como ha visto, incluso puede resultar útil al limpiar datos con Python.
Además de un conjunto, otros tipos de datos o matrices de Python tienen muchos usos y diversas aplicaciones. Trate de jugar con ellos para dominarlos mejor.
Las matrices y las listas son algunas de las estructuras de datos más útiles en programación, aunque pocas personas las utilizan en todo su potencial.
Leer siguiente
- Programación
- Pitón
Idowu es un apasionado de la tecnología inteligente y la productividad. En su tiempo libre, juega con la codificación y cambia al tablero de ajedrez cuando está aburrido, pero también le encanta romper con la rutina de vez en cuando. Su pasión por mostrarle a la gente el camino en torno a la tecnología moderna lo motiva a escribir más.
Suscríbete a nuestro boletín
¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!
Un paso más…!
Confirme su dirección de correo electrónico en el correo electrónico que le acabamos de enviar.