lunes, 14 de julio de 2025

07 Python 3.13. Sets o Conjuntos

Los sets o conjuntos se utilizan para almacenar varios valores en una variable.

Los valores se establecen entre llaves. conjunto={“elemento1”, “elemento2”, “elemento3”,…}

Los elementos son no ordenados, inmutables, no permiten valores duplicados.

No ordenado significa que los elementos en un conjunto no tienen un orden definido.
Los elementos pueden aparecer en un orden diferente cada vez que los usas, y no puede ser referido por índice o clave.

Los elementos del conjunto son inmutables, lo que significa que no podemos cambiar los elementos después de la creación del conjunto.

Una vez que se crea un conjunto, no puede cambiar sus elementos, pero puede eliminar elementos y añadir nuevos elementos.

Los elementos del conjunto pueden ser de cualquier tipo de dato:
    set1 = {"abc", 34, True, 40, "male"}
 

Joins, Uniones de Sets:
union() y update() métodos que unen todos los elementos de ambos conjuntos.
intersection() método que mantiene SOLAMENTE los duplicados.
difference() método mantiene los elementos del primer conjunto que no están en los otros conjuntos.
symmetric_difference() método que mantiene a todos Elementos EXCEPTO los duplicados.

# Declaramos un Set o Conjunto.
conjunto01={"Rosa", "Lola", "Jose", "Antonio"}
conjunto02={"Andres", True, 23.89, 44, "Lucia"}
conjunto03={1, 2, 5, 45.4, 65.9} 

# Los elementos del conjunto no tienen un orden concreto, se presentan de forma aleatoria en su posición.
print(conjunto01)

# Conocer el número de elementos en un conjunto.
print(len(conjunto01))

# Conocer el tipo de datos en un conjunot type().
print(type(conjunto01))
print(type(conjunto02))
print(type(conjunto03))

# No podemos acceder a un valor haciendo referencia al index o key.
for x in conjunto01:
  print(x)

# Saber si un valor SI está presente en el conjunto.
print("Andrea" in conjunto01)

# Saber si un valor NO está presente en el conjunto.
print("Andrea" not in conjunto01) 


# Añadir un elemento al Set add().

conjunto01.add("Andrea")

print(conjunto01)

 
# Añadir elementos de otro Set.
conjunto01.update(conjunto02)
print(conjunto01)

# Añadir elementos de una tupla.
mitupla=["Limon", "Platano", "Naranja"]
print(mitupla)
misfrutas={"Pera", "Cereza", "Mandarina"}
print(misfrutas)
misfrutas.update(mitupla)
print(misfrutas)

# Eliminar un elemento usando remove().
misfrutas.remove("Platano")
print(misfrutas)

 # Eleminar un elemantos usando discard().
misfrutas.discard("Naranja")
print(misfrutas)

# Eliminar el elementos final usando pop() random, aleatorio.
x=misfrutas.pop()
print(x)
print(misfrutas)

# Limpiar el contenido de un Set o Conjunto.
# misfrutas.clear()
# print(misfrutas)

# Eliminar el Set de forma completa.
del conjunto03
#print(conjunto03)
# Retorna NameError: name 'conjunto03' is not defined..

# Recorrer un Set o Conjunto.
for x in misfrutas:
  print(x)

# Joins, Uniones de Sets:
# union() y update() métodos que unen todos los elementos de ambos conjuntos.
set1 = {"a", "b", "c"}
set2 = {1, 2, 3}
set3 = set1.union(set2)

# Retorna un nuevo Set con los valores de los dos conjuntos.
# podemos utilizar el operador |, set3 = set1 | set2.
print(set3)

 # Unir multimples sets.
set1 = {"a", "b", "c"};              set2 = {1, 2, 3, "b"}
set3 = {"John", "Elena", 2}
set4 = {"apple", "bananas", "cherry"}
myset = set1.union(set2, set3, set4)
print(myset)

# Unir un Set a una tupla. union() y update() eliminan los elementos duplicados.
x = {"a", 1, "b", "c"}
y = (1, 2, 3, "a")
z = x.union(y)

print(z)

# intersection() método que crea un nuevo set y mantiene SOLAMENTE los duplicados.
set1 = {"apple", "banana", "cherry"}
set2 = {"google", "microsoft", "apple"}
set3 = set1.intersection(set2) # set3 = set1 & set2 # Podemos usar también esta expresión.
print(set3)

# difference() método que crea un nuevo set y mantiene los elementos del primer conjunto que no están en los otros conjuntos.
set1 = {"apple", "banana", "cherry"}
set2 = {"google", "microsoft", "apple"}
set3 = set1.difference(set2) # set3 = set1 - set2 # Podemos usar también esta expresión.
print(set3)

# symmetric_difference() método que mantiene a todos Elementos EXCEPTO los duplicados.
set1 = {"apple", "banana", "cherry"}
set2 = {"google", "microsoft", "apple"}
set3 = set1.symmetric_difference(set2) # set3 = set1 ^ set2 # Podemos usar tamnbién esta expresión.
print(set3)

# Set Metodos.
# add()                                                   Adds an element to the set.
# clear(                                                   Removes all the elements from the set.
# copy()                                                  Returns a copy of the set.
# difference()                                         - Returns a set containing the difference between two or more sets.
# difference_update()                           -= Removes the items in this set that are also included in another, specified set.
# discard()                                              Remove the specified item.
# intersection()                                      & Returns a set, that is the intersection of two other sets.
# intersection_update()                         &= Removes the items in this set that are not present in other, specified set(s).
# isdisjoint()                                           Returns whether two sets have a intersection or not.
# issubset()                                            <= Returns whether another set contains this set or not.
#                                                             < Returns whether all items in this set is present in other, specified set(s).
# issuperset()                                         >= Returns whether this set contains another set or not.
#                                                             > Returns whether all items in other, specified set(s) is present in this set.
# pop()                                                   Removes an element from the set.
# remove()                                             Removes the specified element.
# symmetric_difference()                     ^ Returns a set with the symmetric differences of two sets.
# symmetric_difference_update()        ^= Inserts the symmetric differences from this set and another.
# union()                                                | Return a set containing the union of sets.
# update()                                              = Update the set with the union of this set and others.


No hay comentarios:

Publicar un comentario

Gracias por vuestros aportes.