Usar sorted() para comparación
En este paso, aprenderás cómo utilizar la función sorted()
para comparación sin modificar la lista original. La función sorted()
devuelve una nueva lista ordenada a partir de un iterable, mientras que el método .sort()
ordena la lista en su lugar. Esto es útil cuando quieres mantener la lista original intacta.
Continuemos utilizando el archivo convert_to_set.py
en tu directorio ~/project
. Modificaremos el código para usar sorted()
y compararlo con la lista original.
## Create a list with duplicate elements
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
## Convert the list to a set to remove duplicates
my_set = set(my_list)
## Convert the set back to a list
my_list_from_set = list(my_set)
## Use sorted() to get a new sorted list
sorted_list = sorted(my_list_from_set)
## Print the original list from set
print("Original list from set:", my_list_from_set)
## Print the sorted list
print("Sorted list:", sorted_list)
## Check if the original list is equal to the sorted list
if my_list_from_set == sorted_list:
print("The original list is sorted.")
else:
print("The original list is not sorted.")
Ahora, ejecutemos el script de Python. Abre tu terminal y navega hasta el directorio ~/project
:
cd ~/project
Luego, ejecuta el script utilizando el comando python
:
python convert_to_set.py
Deberías ver una salida similar a la siguiente:
Original list from set: [1, 2, 3, 4, 5, 6, 9]
Sorted list: [1, 2, 3, 4, 5, 6, 9]
The original list is sorted.
En este caso, la lista original obtenida del conjunto resultó estar ya ordenada. Modifiquemos la lista original para asegurarnos de que no esté ordenada inicialmente.
## Create a list with duplicate elements
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
## Convert the list to a set to remove duplicates
my_set = set(my_list)
## Convert the set back to a list
my_list_from_set = list(my_set)
## Shuffle the list to make sure it's not sorted
import random
random.shuffle(my_list_from_set)
## Use sorted() to get a new sorted list
sorted_list = sorted(my_list_from_set)
## Print the original list from set
print("Original list from set:", my_list_from_set)
## Print the sorted list
print("Sorted list:", sorted_list)
## Check if the original list is equal to the sorted list
if my_list_from_set == sorted_list:
print("The original list is sorted.")
else:
print("The original list is not sorted.")
Ejecuta el script nuevamente:
python convert_to_set.py
Deberías ver una salida similar a la siguiente:
Original list from set: [9, 2, 4, 5, 6, 1, 3]
Sorted list: [1, 2, 3, 4, 5, 6, 9]
The original list is not sorted.
Ahora, la lista original se ha desordenado y la función sorted()
proporciona una versión ordenada para comparación, demostrando que la lista original permanece sin cambios.