Son una colección de objetos sin ordenar no duplicados es decir no puede haber dos elementos iguales y estos no guardan orden alguno. No se pueden indexar pero si se pueden recorrer. Es una colección mutable, en la que se puede usar add() para añadir elementos.
Se usan para almacenar múltiples elementos en una sola variable.
miconjunto = {"manzana", "platano", "anacardo"}
o
{'r', 'c', 'a', 'd', 'b'}
Como ves, un conjunto o set en inglés se especifica encerrando sus elementos entre llaves.
Los conjuntos son uno de los 4 tipos de datos que se usan en Python para almacenar elementos, los otros 3 son las listas, las tuplas y los diccionarios.
Nota: al no estar ordenados, tu los guardas si, pero no puedes estar seguro en que orden se mostrarán cuando los necesites. Pueden aparecer en un orden distinto cada vez y no tienen por tanto ningún índice asociado.
Una vez que el conjunto está creado, no puedes modificar sus elementos, pero si puedes añadir nuevos con add()
Una cosa importante de los conjuntos es que no permiten elementos duplicados, lo cual nos puede ser útil. Por ejemplo imaginemos que tenemos una serie con números pero solo nos interesa saber cuales no están repetidos. Para esto podemos usar los conjuntos.
Ej:
>>> set = {1,3,6,9,4,6,3,2,1,9,7,4,3}
>>> print(set)
{1, 2, 3, 4, 6, 7, 9}
Los valores que están duplicados se ignoran.
Accediendo a los elementos.
# Ejemplo de bucle en un conjunto para poder ver sus valores.>>> conjunto = {'manzana','naranja','platano','pera'}>>> for i in conjunto:>>> print(i)naranjamanzanaplatanopera
>>> # Ejemplo ver si la 'pera' está en el conjunto>>> conjunto = {'manzana','naranja','platano','pera'}>>> print('pera' in conjunto)
True
{1, 2, 3, 4, 6, 7, 9}
Añadiendo Nuevos Elementos.
>>> # Ejemplo para añadir el 'melon' al conjunto >>> conjunto = {'manzana','naranja','platano','pera'} >>> conjunto.add('melon') >>> print(conjunto) {'platano', 'manzana', 'pera', 'melon', 'naranja'}
>>> # Ejemplo de añadir un conjunto a otro >>> conjunto = {'manzana','naranja','platano','pera'} >>> otroconjunto ={'piña', 'kiwi'} >>> conjunto.update(otroconjunto) >>> print(conjunto) {'pera', 'manzana', 'kiwi', 'piña', 'platano', 'naranja'}
>>> # Ejemplo de añadir cualquier iterable >>> conjunto = {'manzana','naranja','platano','pera'} >>> listafrutas = ['cereza', 'pera', 'sandia'] >>> conjunto.update(listafrutas) >>> print(conjunto) {'platano', 'naranja', 'pera', 'manzana', 'cereza', 'sandia'}
Eliminar Elementos de un Conjunto.
Para eliminar elementos de un conjunto ya creado podemos usar los métodos remove() o discard()
>>> # Ejemplo de eliminar un elemento
>>> conjunto = {'manzana','naranja','platano','pera'}
>>> conjunto.remove('naranja')
>>> print(conjunto)
{'manzana', 'pera', 'platano'}
>>> # Ejemplo de eliminar todo un conjunto y dejarlo vacio
>>> conjunto = {'manzana','naranja','platano','pera'}
>>> conjunto.clear()
>>> print(conjunto)
set()
>>> conjunto_vacio = set()
>>> diccionario_vacio = {}
>>> print(type(conjunto_vacio))
>>> print(type(diccionario_vacio))
<class 'set'>
<class 'dict'>
Otros métodos y funciones que se pueden aplicar a conjuntos.
>>> conjunto = {1,2,3,4,5,6,7,8,9}
>>> print("El conjunto tiene",len(conjunto),"elementos")
El conjunto tiene 9 elementos
conjunto = {1,2,3,4,5,6,7,8,9}
print("Está el número 2 en el conjunto =", 2 in conjunto)
Está el número 2 en el conjunto = True
>>> conjunto = {1,2,3,4,5,6,7,8,9}
>>> print("¿No está el número 15 en el conjunto =", 15 not in conjunto)
¿No está el número 15 en el conjunto? = True
>>> print("¿No está el número 2 en el conjunto? =", 2 not in conjunto)
¿No está el número 2 en el conjunto? = False
>>> s1 = {1,2,3} >>> s2 = {3,4,5} >>> print(s1.isdisjoint(s2)) False >>> # El resultado es false porque s1 y s2 comparten elemento 3.
>>> s1 = {1,2,3,4,7,9} >>> s2 = {3,4,9} >>> print(s2.issubset(s1)) True >>> print(s2<=s1) True
>>> s1 = {'pera','melocoton','limon','zanahoria'}
>>> s2 = {'casa','coche','limon','pera'}
>>> print(s1.difference(s2))
>>> print(s1-s2)
>>> # elementos del conjunto s1 que no están en s2
{'zanahoria', 'melocoton'}
{'zanahoria', 'melocoton'}
>>> s1 = {'pera','melocoton','limon','zanahoria'}
>>> s2 = {'casa','coche','limon','pera'}
>>> print(s1.symmetric_difference(s2))
>>> print(s1 ^ s2)
{'zanahoria', 'melocoton', 'coche', 'casa'}
{'zanahoria', 'melocoton', 'coche', 'casa'}
>>> s1={1,2,3,4,5}
>>> s2={2,4}
>>> print(s2)
{1, 2, 3}
>>> s1={1,2,3,4,5}
>>> s2={2,4}
>>> print(s2<s1)
True
>>> print(s1.issuperset(s2))
True
>>> s1={1,2,3} >>> s2={4,5,6} >>> s3={7,8,9} >>> print(s1.union(s2,s3)) {1, 2, 3, 4, 5, 6, 7, 8, 9} >>> print(s1 | s2 | s3) {1, 2, 3, 4, 5, 6, 7, 8, 9}
>>> s1={1,2,3}
>>> s2={4,5,6,2}
>>> s3={7,8,9,2}
>>> print(s1.intersection(s2,s3))
{2}
>>> print(s1 & s2 & s3)
{2}
No hay comentarios:
Publicar un comentario