Sort lists in Python without modifying the original

Sort lists in Python without modifying the original Sort lists in Python without modifying the original

Sort listslink image 0

Supongamos que tenemos una lista desordenada

	
list = [1, 4, 7, 2, 5, 8, 3, 6, 9]
print(list)
Copy
	
[1, 4, 7, 2, 5, 8, 3, 6, 9]

Y que la queremos ordenar, así que usamos el método sort()

	
list.sort()
print(list)
Copy
	
[1, 2, 3, 4, 5, 6, 7, 8, 9]

El problema del método sort() es que modifica la lista original, si volvemos a imprimir la lista vemos que la tenemos ordenada, y no tenemos la original

	
print(list)
Copy
	
[1, 2, 3, 4, 5, 6, 7, 8, 9]

Volvemos a crear la lista original

	
list = [1, 4, 7, 2, 5, 8, 3, 6, 9]
print(list)
Copy
	
[1, 4, 7, 2, 5, 8, 3, 6, 9]

Para ordenar una lista sin modificarla podemos usar la función sorted()

	
print(sorted(list))
Copy
	
[1, 2, 3, 4, 5, 6, 7, 8, 9]

Si ahora volvemos a imprimir la lista original, vemos que no ha cambiado

	
print(list)
Copy
	
[1, 4, 7, 2, 5, 8, 3, 6, 9]

Lo mismo ocurre si la queremos ordenar en orden inverso, podemos usar el método .reverse()

	
list.reverse()
print(list)
Copy
	
[9, 6, 3, 8, 5, 2, 7, 4, 1]

Si imprimimos la lista vemos que está ordenada en orden inverso y no como la teníamos al principio.

	
print(list)
Copy
	
[9, 6, 3, 8, 5, 2, 7, 4, 1]

Volvemos a crear la lista original

	
list = [1, 4, 7, 2, 5, 8, 3, 6, 9]
print(list)
Copy
	
[1, 4, 7, 2, 5, 8, 3, 6, 9]

Si queremos ordenar una lista sin modificarla, volvemos a usar la función sorted(), pero con el argumento reverse=True

	
print(sorted(list, reverse=True))
Copy
	
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Si ahora imprimimos la lista original, vemos que no ha cambiado.

	
print(list)
Copy
	
[1, 4, 7, 2, 5, 8, 3, 6, 9]

Seguir leyendo

MCP Durability: Servidor y Cliente con Persistencia para Tareas de Larga Duración

MCP Durability: Servidor y Cliente con Persistencia para Tareas de Larga Duración

Aprende a crear un servidor y cliente MCP con durabilidad para tareas de larga duración. Tutorial completo sobre Model Context Protocol con persistencia de datos usando SQLite, gestión de tareas en background y monitoreo en tiempo real. Implementa migración de datos, procesamiento por lotes y entrenamiento de modelos ML que sobreviven a reinicios del servidor. Código Python con FastMCP, recursos, herramientas y patrones de durabilidad para aplicaciones enterprise.

Stream información en MCP: Guía Completa para Actualizaciones de Progreso en Tiempo Real con FastMCP

Stream información en MCP: Guía Completa para Actualizaciones de Progreso en Tiempo Real con FastMCP

Aprende cómo implementar streaming en tiempo real en aplicaciones MCP (Model Context Protocol) usando FastMCP. Esta guía completa te muestra cómo crear servidores y clientes MCP que soportan actualizaciones de progreso e información streaming para tareas de larga duración. Construirás herramientas habilitadas para streaming que proporcionan retroalimentación en tiempo real durante el procesamiento de datos, subida de archivos, tareas de monitoreo y otras operaciones que requieren mucho tiempo. Descubre cómo usar StreamableHttpTransport, implementar manejadores de progreso con Context y crear barras de progreso visuales que mejoran la experiencia del usuario al trabajar con aplicaciones MCP que requieren retroalimentación continua.

Últimos posts -->

¿Has visto estos proyectos?

Horeca chatbot

Horeca chatbot Horeca chatbot
Python
LangChain
PostgreSQL
PGVector
React
Kubernetes
Docker
GitHub Actions

Chatbot conversacional para cocineros de hoteles y restaurantes. Un cocinero, jefe de cocina o camaeror de un hotel o restaurante puede hablar con el chatbot para obtener información de recetas y menús. Pero además implementa agentes, con los cuales puede editar o crear nuevas recetas o menús

Naviground

Naviground Naviground

Subtify

Subtify Subtify
Python
Whisper
Spaces

Generador de subtítulos para videos en el idioma que desees. Además a cada persona le pone su subtítulo de un color

Ver todos los proyectos -->

¿Quieres aplicar la IA en tu proyecto? Contactame!

¿Quieres mejorar con estos tips?

Últimos tips -->

Usa esto en local

Los espacios de Hugging Face nos permite ejecutar modelos con demos muy sencillas, pero ¿qué pasa si la demo se rompe? O si el usuario la elimina? Por ello he creado contenedores docker con algunos espacios interesantes, para poder usarlos de manera local, pase lo que pase. De hecho, es posible que si pinchas en alún botón de ver proyecto te lleve a un espacio que no funciona.

Flow edit

Flow edit Flow edit

Edita imágenes con este modelo de Flow. Basándose en SD3 o FLUX puedes editar cualquier imagen y generar nuevas

FLUX.1-RealismLora

FLUX.1-RealismLora FLUX.1-RealismLora
Ver todos los contenedores -->

¿Quieres aplicar la IA en tu proyecto? Contactame!

¿Quieres entrenar tu modelo con estos datasets?

short-jokes-dataset

Dataset de chistes en inglés

opus100

Dataset con traducciones de inglés a español

netflix_titles

Dataset con películas y series de Netflix

Ver más datasets -->