Cómo verificar si una lista contiene solo elementos únicos en Python

PythonPythonBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderás cómo verificar si una lista contiene solo elementos únicos en Python. El laboratorio se centra en el uso de conjuntos (sets) de Python para definir e identificar elementos únicos dentro de una lista.

El laboratorio te guía a través de la creación de un script de Python, unique_elements.py, para demostrar cómo funcionan los conjuntos. Crearás una lista con elementos duplicados, la convertirás en un conjunto para eliminar los duplicados y luego imprimirás tanto la lista original como el conjunto resultante de elementos únicos. Al comparar la lista original con el conjunto, entenderás cómo se pueden utilizar los conjuntos para identificar y extraer elementos únicos.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python/DataStructuresGroup -.-> python/sets("Sets") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") python/PythonStandardLibraryGroup -.-> python/data_collections("Data Collections") subgraph Lab Skills python/sets -.-> lab-559529{{"Cómo verificar si una lista contiene solo elementos únicos en Python"}} python/build_in_functions -.-> lab-559529{{"Cómo verificar si una lista contiene solo elementos únicos en Python"}} python/data_collections -.-> lab-559529{{"Cómo verificar si una lista contiene solo elementos únicos en Python"}} end

Definir Elementos Únicos

En este paso, aprenderás cómo definir elementos únicos utilizando conjuntos (sets) de Python. Los conjuntos son una estructura de datos fundamental en Python que solo almacenan elementos únicos y desordenados. Esto significa que si intentas agregar un elemento duplicado a un conjunto, simplemente se ignorará. Comprender los conjuntos es crucial para tareas como eliminar duplicados de una lista o verificar la presencia de un elemento en una colección.

Comencemos creando un script de Python para demostrar cómo funcionan los conjuntos.

  1. Abre tu WebIDE. Deberías ver el explorador de archivos a la izquierda y un editor de texto a la derecha.

  2. En el explorador de archivos, navega hasta el directorio de tu proyecto: /home/labex/project.

  3. Crea un nuevo archivo llamado unique_elements.py haciendo clic derecho en el explorador de archivos y seleccionando "Nuevo Archivo".

  4. Abre unique_elements.py en el editor y agrega el siguiente código:

## Create a list with duplicate elements
my_list = [1, 2, 2, 3, 4, 4, 5]

## Convert the list to a set to remove duplicates
my_set = set(my_list)

## Print the original list and the set
print("Original List:", my_list)
print("Set of Unique Elements:", my_set)

Este script primero crea una lista llamada my_list que contiene elementos duplicados. Luego, convierte esta lista en un conjunto llamado my_set. La función set() elimina automáticamente cualquier elemento duplicado, dejando solo los valores únicos. Finalmente, el script imprime tanto la lista original como el conjunto de elementos únicos.

  1. Guarda el archivo unique_elements.py.

  2. Ahora, ejecuta el script utilizando el siguiente comando en la terminal:

python unique_elements.py

Deberías ver la siguiente salida:

Original List: [1, 2, 2, 3, 4, 4, 5]
Set of Unique Elements: {1, 2, 3, 4, 5}

Como puedes ver, el conjunto my_set solo contiene los elementos únicos de la lista original my_list. El orden de los elementos en el conjunto puede ser diferente al de la lista original porque los conjuntos son desordenados.

Este ejemplo demuestra el uso básico de los conjuntos para definir elementos únicos en Python. En los siguientes pasos, explorarás operaciones más avanzadas con conjuntos.

Comparar len() con len(set())

En este paso, aprenderás cómo utilizar la función len() para determinar el número de elementos en una lista y compararlo con el número de elementos únicos en un conjunto creado a partir de la misma lista. Esta es una técnica útil para identificar el número de elementos duplicados en una lista.

La función len() devuelve el número de elementos en un objeto. Cuando se aplica a una lista, devuelve el número total de elementos, incluyendo los duplicados. Cuando se aplica a un conjunto, devuelve el número de elementos únicos.

Modifiquemos el script de Python del paso anterior para comparar las longitudes de la lista original y del conjunto de elementos únicos.

  1. Abre el archivo unique_elements.py en tu WebIDE, que creaste en el paso anterior. Debería estar ubicado en /home/labex/project.

  2. Modifica el archivo unique_elements.py para incluir el siguiente código:

## Create a list with duplicate elements
my_list = [1, 2, 2, 3, 4, 4, 5]

## Convert the list to a set to remove duplicates
my_set = set(my_list)

## Print the length of the original list and the set
print("Length of Original List:", len(my_list))
print("Length of Set of Unique Elements:", len(my_set))

## Calculate the number of duplicate elements
num_duplicates = len(my_list) - len(my_set)
print("Number of Duplicate Elements:", num_duplicates)

En este script, hemos agregado código para calcular e imprimir las longitudes tanto de la lista original como del conjunto de elementos únicos. Luego, calculamos el número de elementos duplicados restando la longitud del conjunto de la longitud de la lista.

  1. Guarda el archivo unique_elements.py.

  2. Ejecuta el script utilizando el siguiente comando en la terminal:

python unique_elements.py

Deberías ver la siguiente salida:

Length of Original List: 7
Length of Set of Unique Elements: 5
Number of Duplicate Elements: 2

Esta salida muestra que la lista original tiene 7 elementos, mientras que el conjunto de elementos únicos tiene 5 elementos. La diferencia entre estas longitudes (7 - 5 = 2) indica que hay 2 elementos duplicados en la lista original.

Este ejemplo demuestra cómo utilizar la función len() en conjunto con conjuntos para identificar y cuantificar elementos duplicados en una lista.

Verificar con la conversión a set()

En este paso, aprenderás cómo verificar si una lista contiene solo elementos únicos convirtiéndola en un conjunto (set) y comparando las longitudes. Esta es una forma concisa y eficiente de determinar si hay elementos duplicados en una lista.

La idea central es que si una lista contiene elementos duplicados, convertirla en un conjunto reducirá el número de elementos, ya que los conjuntos solo almacenan valores únicos. Si la longitud de la lista original es la misma que la del conjunto creado a partir de ella, entonces la lista contiene solo elementos únicos.

Modifiquemos el script de Python de los pasos anteriores para verificar si una lista contiene solo elementos únicos utilizando la conversión a conjunto.

  1. Abre el archivo unique_elements.py en tu WebIDE, que creaste en los pasos anteriores. Debería estar ubicado en /home/labex/project.

  2. Modifica el archivo unique_elements.py para incluir el siguiente código:

## Create a list with or without duplicate elements
my_list = [1, 2, 3, 4, 5]  ## Example with unique elements
## my_list = [1, 2, 2, 3, 4, 5]  ## Example with duplicate elements

## Convert the list to a set
my_set = set(my_list)

## Check if the list contains only unique elements
if len(my_list) == len(my_set):
    print("The list contains only unique elements.")
else:
    print("The list contains duplicate elements.")

En este script, primero definimos una lista my_list. Puedes elegir usar el ejemplo con elementos únicos o el ejemplo con elementos duplicados comentando/descomentando las líneas correspondientes. Luego, convertimos la lista en un conjunto y comparamos las longitudes de la lista y del conjunto. Si las longitudes son iguales, imprimimos un mensaje que indica que la lista contiene solo elementos únicos; de lo contrario, imprimimos un mensaje que indica que la lista contiene elementos duplicados.

  1. Guarda el archivo unique_elements.py.

  2. Ejecuta el script utilizando el siguiente comando en la terminal:

python unique_elements.py

Si usas el ejemplo con elementos únicos (my_list = [1, 2, 3, 4, 5]), deberías ver la siguiente salida:

The list contains only unique elements.

Si usas el ejemplo con elementos duplicados (my_list = [1, 2, 2, 3, 4, 5]), deberías ver la siguiente salida:

The list contains duplicate elements.

Este ejemplo demuestra cómo usar la conversión a conjunto para verificar eficientemente si una lista contiene solo elementos únicos. Esta técnica se utiliza a menudo en tareas de procesamiento y validación de datos.

Resumen

En este laboratorio (lab), aprendiste cómo definir elementos únicos utilizando conjuntos (sets) de Python. El laboratorio consistió en crear un script de Python llamado unique_elements.py para demostrar cómo funcionan los conjuntos. Creaste una lista con elementos duplicados y luego la convertiste en un conjunto utilizando la función set(), que elimina automáticamente cualquier elemento duplicado, dejando solo los valores únicos.

Luego, el script imprimió tanto la lista original como el conjunto de elementos únicos, mostrando cómo se pueden utilizar los conjuntos para extraer valores únicos de una lista. Observaste que el orden de los elementos en el conjunto puede diferir de la lista original debido a la naturaleza desordenada de los conjuntos.