Set

La funciΓ³n set en Python es una estructura de datos de tipo conjunto que permite almacenar elementos ΓΊnicos y sin un orden definido. Esto significa que un conjunto no permite elementos repetidos y no mantiene ningΓΊn orden especΓ­fico.

La cabecera de la funciΓ³n set es la siguiente:

set(iterable)
  • iterable: Una secuencia (por ejemplo, una lista, una tupla, etc.) que se quiere convertir en un conjunto.

Ejemplo:

colors = ['red', 'green', 'blue', 'red', 'green']
color_set = set(colors)
print(color_set)

# Salida:
# {'blue', 'green', 'red'}

En este ejemplo, estamos creando un conjunto color_set a partir de la lista colors. Al hacer esto, los elementos repetidos se eliminan y solo se mantiene una copia de cada elemento ΓΊnico.

Set Vs Listas

Las principales diferencias entre las listas y los conjuntos (set) en Python son las siguientes:

  1. Elementos ΓΊnicos: Los conjuntos no permiten elementos repetidos, mientras que las listas sΓ­.

  2. Orden: Los elementos en un conjunto no tienen un orden especΓ­fico, mientras que los elementos en una lista sΓ­ tienen un orden.

  3. BΓΊsqueda: La bΓΊsqueda de un elemento en un conjunto es mΓ‘s rΓ‘pida que en una lista, ya que los conjuntos utilizan una estructura de datos interna que permite realizar bΓΊsquedas en tiempo constante. En cambio, las bΓΊsquedas en una lista tienen un tiempo lineal en funciΓ³n de la longitud de la lista.

  4. ModificaciΓ³n: Los conjuntos se pueden modificar (agregar o eliminar elementos), mientras que las listas tambiΓ©n se pueden modificar.

  5. Operaciones de conjuntos: Los conjuntos permiten realizar operaciones de conjuntos, como la uniΓ³n, la intersecciΓ³n y la diferencia, de una manera fΓ‘cil y eficiente.

En resumen, las listas son ΓΊtiles cuando se requiere un orden y se pueden permitir elementos repetidos, mientras que los conjuntos son ΓΊtiles cuando se requiere un conjunto de elementos ΓΊnicos y no se necesita un orden especΓ­fico.

MΓ©todos sets

AquΓ­ hay una lista de los mΓ©todos mΓ‘s comunes en conjuntos (set) en Python y un ejemplo de cΓ³mo usarlos:

add

Este mΓ©todo agrega un elemento al conjunto. Si el elemento ya existe en el conjunto, no se agrega.

# Crear un conjunto vacΓ­o
colores = set()

# Agregar elementos al conjunto
colores.add("rojo")
colores.add("verde")

# Imprimir el conjunto
print(colores)

# Salida: {'rojo', 'verde'}

remove

Este mΓ©todo elimina un elemento del conjunto. Si el elemento no existe en el conjunto, se genera una excepciΓ³n KeyError.

# Crear un conjunto de nΓΊmeros
numeros = {1, 2, 3, 4, 5}

# Eliminar un elemento del conjunto
numeros.remove(3)

# Imprimir el conjunto
print(numeros)

# Salida: {1, 2, 4, 5}

pop

El mΓ©todo pop() elimina un elemento aleatorio del set.

s = set([1, 2])
s.pop()
print(s) #{2}

union

Este mΓ©todo devuelve un nuevo conjunto que es la uniΓ³n de dos conjuntos.

# Crear dos conjuntos
conjunto1 = {1, 2, 3}
conjunto2 = {3, 4, 5}

# Unir los conjuntos
unido = conjunto1.union(conjunto2)

# Imprimir el conjunto unido
print(unido)

# Salida: {1, 2, 3, 4, 5}

El operador | nos permite realizar la uniΓ³n de dos sets, lo que equivale a juntarlos. El equivalente es el mΓ©todo union() que vemos a continuaciΓ³n.

s1 = set([1, 2, 3])
s2 = set([3, 4, 5])
print(s1 | s2) #{1, 2, 3, 4, 5}

intersection

Este mΓ©todo devuelve un nuevo conjunto que es la intersecciΓ³n de dos conjuntos.

# Crear dos conjuntos
conjunto1 = {1, 2, 3}
conjunto2 = {2, 3, 4}

# Intersecar los conjuntos
intersectado = conjunto1.intersection(conjunto2)

# Imprimir el conjunto intersectado
print(intersectado)

# Salida: {2, 3}

difference

Este mΓ©todo devuelve un nuevo conjunto que es la diferencia de dos conjuntos.

# Crear dos conjuntos
conjunto1 = {1, 2, 3}
conjunto2 = {2, 3, 4}

# Calcular la diferencia de los conjuntos
diferencia = conjunto1.difference(conjunto2)

# Imprimir la diferencia de los conjuntos
print(diferencia)

# Salida: {1}

Last updated