Ordenar listas em Python sem modificar a original

Ordenar listas em Python sem modificar a original Ordenar listas em Python sem modificar a original

Ordenar listaslink image 2

Aviso: Este post foi traduzido para o português usando um modelo de tradução automática. Por favor, me avise se encontrar algum erro.

Suponhamos que temos uma lista desordenada

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

E que queremos ordená-la, então usamos o método sort()

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

O problema do método sort() é que ele modifica a lista original, se voltarmos a imprimir a lista vemos que ela está ordenada, e não temos a original.

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

Voltamos a criar a 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 uma lista sem modificá-la, podemos usar a função sorted()

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

Se agora voltarmos a imprimir a lista original, veremos que não mudou.

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

O mesmo ocorre se a quisermos ordenar em ordem inversa, podemos usar o método .reverse()

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

Se imprimirmos a lista, vemos que está ordenada em ordem inversa e não como a tínhamos no início.

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

Voltamos a criar a lista original

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

Se queremos ordenar uma lista sem modificá-la, usamos novamente a função sorted(), mas com o argumento reverse=True

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

Se agora imprimirmos a lista original, vemos que ela não mudou.

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

Continuar lendo

MCP Durabilidade: Servidor e Cliente com Persistência para Tarefas de Longa Duração

MCP Durabilidade: Servidor e Cliente com Persistência para Tarefas de Longa Duração

Aprenda a construir servidor e cliente MCP com durabilidade para tarefas de longa duração. Tutorial completo do Model Context Protocol com persistência de dados usando SQLite, gerenciamento de tarefas em background e monitoramento em tempo real. Implemente migração de dados, processamento em lote e treinamento de modelos ML que sobrevivem a reinicializações do servidor. Código Python com FastMCP, recursos, ferramentas e padrões de durabilidade para aplicações enterprise.

Stream Informações em MCP: Guia Completo para Atualizações de Progresso em Tempo Real com FastMCP

Stream Informações em MCP: Guia Completo para Atualizações de Progresso em Tempo Real com FastMCP

Aprenda como implementar streaming em tempo real em aplicações MCP (Model Context Protocol) usando FastMCP. Este guia abrangente mostra como criar servidores e clientes MCP que suportam atualizações de progresso e informações streaming para tarefas de longa duração. Você construirá ferramentas habilitadas para streaming que fornecem feedback em tempo real durante processamento de dados, upload de arquivos, tarefas de monitoramento e outras operações que demandam muito tempo. Descubra como usar StreamableHttpTransport, implementar manipuladores de progresso com Context e criar barras de progresso visuais que melhoram a experiência do usuário ao trabalhar com aplicações MCP que requerem feedback contínuo.

Últimos posts -->

Você viu esses projetos?

Horeca chatbot

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

Chatbot conversacional para cozinheiros de hotéis e restaurantes. Um cozinheiro, gerente de cozinha ou serviço de quarto de um hotel ou restaurante pode falar com o chatbot para obter informações sobre receitas e menus. Mas também implementa agentes, com os quais pode editar ou criar novas receitas ou menus

Naviground

Naviground Naviground

Subtify

Subtify Subtify
Python
Whisper
Spaces

Gerador de legendas para vídeos no idioma que você desejar. Além disso, coloca uma legenda de cor diferente para cada pessoa

Ver todos os projetos -->

Quer aplicar IA no seu projeto? Entre em contato!

Quer melhorar com essas dicas?

Últimos tips -->

Use isso localmente

Os espaços do Hugging Face nos permitem executar modelos com demos muito simples, mas e se a demo quebrar? Ou se o usuário a deletar? Por isso, criei contêineres docker com alguns espaços interessantes, para poder usá-los localmente, aconteça o que acontecer. Na verdade, se você clicar em qualquer botão de visualização de projeto, ele pode levá-lo a um espaço que não funciona.

Flow edit

Flow edit Flow edit

Edite imagens com este modelo de Flow. Baseado em SD3 ou FLUX, você pode editar qualquer imagem e gerar novas

FLUX.1-RealismLora

FLUX.1-RealismLora FLUX.1-RealismLora
Ver todos os contêineres -->

Quer aplicar IA no seu projeto? Entre em contato!

Você quer treinar seu modelo com esses datasets?

short-jokes-dataset

Dataset com piadas em inglês

opus100

Dataset com traduções de inglês para espanhol

netflix_titles

Dataset com filmes e séries da Netflix

Ver mais datasets -->