2.1 Conjunto y sus propiedades
Los conjuntos son un tipo especial de colección de datos en programación, que ayuda a almacenar elementos únicos. En pocas palabras, un conjunto es parecido a una cesta en la que sólo se pueden poner objetos no repetidos. Si intentas poner algo que ya está en la cesta, simplemente ignorará la acción.
Características principales de los conjuntos
Unicidad:
En un conjunto cada elemento es único. Si añades un elemento que ya existe en el conjunto, no se añadirá de nuevo.
Desordenado:
A diferencia de las listas, los elementos en un conjunto no tienen un orden específico. Esto significa que no puedes acceder a los elementos por índice.
Mutabilidad:
Los conjuntos son mutables: se pueden añadir y eliminar elementos, pero los elementos del conjunto deben ser inmutables (por ejemplo, números, cadenas o tuplas).
2.2 Creación de un conjunto en Python
Vamos a ver todas las formas de crear conjuntos en Python, para que tengas un arsenal completo de métodos para trabajar con ellos.
Uso de llaves
La forma más común de crear un conjunto es usar llaves {}. Al igual que al trabajar con tuplas y listas, simplemente enumeras los elementos dentro de las llaves:
fruit_set = {"apple", "banana", "cherry"}
print(fruit_set) # Salida: {"banana", "cherry", "apple"}
Los elementos pueden ser de diferentes tipos, pero cada elemento debe ser único.
fruit_set = {"apple", 1, 3.25}
print(fruit_set) # Salida: {1, "apple", 3.25}
Uso de la función set()
La función set() se puede usar para crear un conjunto a partir de otro objeto iterable, como una lista, cadena o tupla.
Desde una lista
list_to_set = set([1, 2, 3, 4, 4, 5])
print(list_to_set) # Salida: {1, 2, 3, 4, 5}
Desde una cadena
string_to_set = set("hello")
print(string_to_set) # Salida: {"h", "e", "l", "o"}
Desde una tupla
tuple_to_set = set((1, 2, 3, 4, 5))
print(tuple_to_set) # Salida: {1, 2, 3, 4, 5}
Desde otro conjunto
Puedes crear un conjunto a partir de otro conjunto, lo que es útil para crear copias.
original_set = {"apple", "banana", "cherry"}
new_set = set(original_set)
print(new_set) # Salida: {"banana", "cherry", "apple"}
Conjunto vacío
Para crear un conjunto vacío se utiliza la función set(). Ten en cuenta que el uso de llaves {} creará un diccionario (dictionary) vacío, en lugar de un conjunto.
empty_set = set()
print(empty_set) # Salida: set()
2.3 Lista de métodos
Los conjuntos en Python tienen un conjunto de métodos que permiten gestionar eficazmente las colecciones de datos. Aquí algunos de los métodos más populares del clase set:
| Método | Descripción |
|---|---|
add() |
Añade un elemento al conjunto |
remove() |
Elimina un elemento del conjunto, lanza un error si el elemento no está presente |
discard() |
Elimina un elemento del conjunto, no lanza error si el elemento no está presente |
pop() |
Elimina y devuelve un elemento aleatorio, lanza un error si el conjunto está vacío |
clear() |
Elimina todos los elementos del conjunto |
union() |
Devuelve la unión de conjuntos |
intersection() |
Devuelve la intersección de conjuntos |
difference() |
Devuelve la diferencia de conjuntos |
symmetric_difference() |
Devuelve la diferencia simétrica de conjuntos |
update() |
Añade elementos de otro conjunto o objeto iterable al conjunto actual |
A continuación, exploraremos los detalles del funcionamiento de todos estos métodos y un poquito más.
GO TO FULL VERSION