A função sorted
em Python é uma ferramenta poderosa e versátil para ordenar elementos de uma sequência. Neste tutorial, vamos explorar como utilizar essa função de maneira eficiente, abordando desde os conceitos básicos até exemplos mais avançados. Se você é um programador intermediário em Python, este guia é para você.
O que é a Função Sorted em Python?
A função sorted
em Python é utilizada para ordenar iteráveis, como listas, tuplas e conjuntos. Ela retorna uma nova lista com os elementos ordenados de acordo com a ordem padrão ou com uma função de comparação específica, se fornecida.
Sintaxe Básica
A sintaxe básica da função sorted
é a seguinte:
sorted(iterable, key=None, reverse=False)
- iterable: O iterável que você deseja ordenar.
- key: Uma função que serve como base para a ordenação. (opcional)
- reverse: Um booleano que, se definido como
True
, ordena os elementos em ordem decrescente. (opcional)
Exemplos Básicos
Vamos começar com alguns exemplos simples para entender como a função sorted
funciona.
Ordenando uma Lista de Números
numeros = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
numeros_ordenados = sorted(numeros)
print(numeros_ordenados)
TestarSaída:
[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
Ordenando uma Lista de Strings
frutas = ['banana', 'abacaxi', 'uva']
frutas_ordenadas = sorted(frutas)
print(frutas_ordenadas)
TestarSaída:
['abacaxi', 'banana', 'uva']
Utilizando a Função Key
A função key
permite definir uma lógica personalizada para a ordenação. Vamos ver alguns exemplos.
Ordenando por Comprimento da String
frutas = ['banana', 'abacaxi', 'uva']
frutas_ordenadas = sorted(frutas, key=len)
print(frutas_ordenadas)
TestarSaída:
['uva', 'banana', 'abacaxi']
Ordenando uma Lista de Dicionários
alunos = [
{'nome': 'Juliano', 'idade': 30},
{'nome': 'Laura', 'idade': 24},
{'nome': 'Roberto', 'idade': 19},
{'nome': 'Guilherme', 'idade': 47}
]
alunos_ordenados = sorted(alunos, key=lambda x: x['idade'])
print(alunos_ordenados)
TestarSaída:
[{'nome': 'Roberto', 'idade': 19}, {'nome': 'Laura', 'idade': 24}, {'nome': 'Juliano', 'idade': 30}, {'nome': 'Guilherme', 'idade': 47}]
Ordenação Reversa
Para ordenar os elementos em ordem decrescente, utilize o parâmetro reverse=True
.
Exemplo de Ordenação Reversa
numeros = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
numeros_ordenados_reverso = sorted(numeros, reverse=True)
print(numeros_ordenados_reverso)
TestarSaída:
[9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
Comparação com o Método Sort
A diferença entre sorted
e o método sort
é que sorted
retorna uma nova lista ordenada, enquanto sort
ordena a lista original.
Exemplo com Sorted
numeros = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
numeros_ordenados = sorted(numeros)
print(numeros_ordenados)
print(numeros) # A lista original permanece inalterada
TestarExemplo com Sort
numeros = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
numeros.sort()
print(numeros) # A lista original é alterada
TestarConclusão
A função sorted
em Python é uma ferramenta essencial para qualquer programador que precise ordenar dados de maneira eficiente e flexível. Compreender como utilizar sorted
com diferentes tipos de iteráveis e funções de comparação pode melhorar significativamente a qualidade e a eficiência do seu código.
Esperamos que este tutorial tenha ajudado você a entender melhor como utilizar a função sorted
em Python. Se você tiver alguma dúvida ou sugestão, sinta-se à vontade para deixar um comentário abaixo.
Cursos de programação gratuitos com certificado
Aprenda a programar e desenvolva soluções para o seu trabalho com Python para alcançar novas oportunidades profissionais. Aqui na Asimov você encontra:
- Conteúdos gratuitos
- Projetos práticos
- Certificados
- +20 mil alunos e comunidade exclusiva
- Materiais didáticos e download de código
Comentários