Python é uma linguagem de programação de uso geral amplamente usada. As principais razões para a popularidade do Python são sua sintaxe simples, módulos integrados e funções que permitem que você execute tarefas poderosas. A função sort () é uma função interna do Python que classifica os elementos em uma lista, em ordem crescente por padrão. Você também pode usar a função sort () para classificar os elementos em ordem decrescente ou definir os critérios de classificação. Neste artigo, a função sort () é explicada em detalhes com alguns exemplos simples.
Sintaxe da função sort ()
A sintaxe da função sort () é a seguinte:
list_obj.classificar (reverso = “”, chave = “”)Ambos os parâmetros dentro da função sort () são opcionais. O parâmetro reverso é usado para classificar a lista em ordem decrescente. Se “reverso = verdadeiro”, a lista será classificada em ordem decrescente; caso contrário, “reverso = falso” por padrão. O parâmetro “chave” especifica a função que define os critérios de classificação. A função sort () não altera a ordem dos elementos no objeto de lista original; em vez disso, ele cria uma cópia do objeto de lista com elementos classificados e o retorna como a saída.
Exemplos de função sort ()
Os exemplos a seguir cobrem o uso da função sort () em mais detalhes.
Exemplo 1: Classificando uma lista de strings
A função sort () classifica listas de strings, inteiros e números de ponto flutuante. Neste primeiro exemplo, classificaremos a seguinte lista de strings em ordem crescente usando a função sort ().
#declarar uma lista de alunosaluno = ['Mark', 'John', 'Taylor', 'Donald', 'Joseph', 'Albert', 'Cameron']
imprimir ("A lista original é:")
imprimir (aluno)
#sorting the list
# usando a função sort ()
aluna.ordenar()
imprimir ("A lista classificada é:")
imprimir (aluno)
Resultado
Como você pode ver, a lista foi classificada com sucesso.
A seguir, vamos classificar a lista de elementos de string em ordem decrescente. Neste caso, o valor reverso é igual a “verdadeiro.”
#declarar uma lista de alunosaluno = ['Mark', 'John', 'Taylor', 'Donald', 'Joseph', 'Albert', 'Cameron']
imprimir ("A lista original é:")
imprimir (aluno)
#sorting the list
# usando a função sort () com o parâmetro reverso
aluna.classificar (reverso = verdadeiro)
imprimir ("A lista classificada é:")
imprimir (aluno)
Resultado
Neste exemplo, vamos classificar a lista de alfabetos vocálicos em ordem crescente e decrescente, respectivamente.
#declarar uma lista de alunosminha_lista = ['i', 'u', 'a', 'o', 'e']
imprimir ("A lista original é:")
imprimir (minha_lista)
#sorting a lista em ordem crescente
# usando a função sort ()
minha lista.ordenar()
imprimir ("A lista classificada em ordem crescente:")
imprimir (minha_lista)
#sorting a lista em ordem decrescente
minha lista.classificar (reverso = verdadeiro)
print ("A lista classificada em ordem decrescente:")
imprimir (minha_lista)
Resultado
Agora, vamos classificar a lista com base no comprimento de cada elemento. A função funclen () verifica a lista de cada item e o retorna. A função sort () então classifica os elementos na lista com base no comprimento de cada elemento, com os elementos com o comprimento mais curto vindo primeiro na lista classificada.
#declarar uma funçãodef funcLen (ele):
return len (ele)
#declarar uma lista de animais
my_list = ['Cabra', 'Gato', 'Elefante', 'Crocodilo', 'Coelho', 'Rinoceronte']
imprimir ("A lista original é:")
imprimir (minha_lista)
#sorting a lista usando a função funcLen
minha lista.sort (key = funcLen)
imprimir ("A lista classificada é:")
imprimir (minha_lista)
Resultado
Para classificar os elementos de forma que os itens de comprimento maior venham primeiro, o valor do parâmetro reverso deve ser "verdadeiro.”
#declarar uma funçãodef funcLen (ele):
return len (ele)
#declarar uma lista de animais
my_list = ['Cabra', 'Gato', 'Elefante', 'Crocodilo', 'Coelho', 'Rinoceronte']
imprimir ("A lista original é:")
imprimir (minha_lista)
#sorting uma lista usando a função funcLen
minha lista.ordenar (reverso = Verdadeiro, chave = funçãoLen)
imprimir ("A lista classificada é:")
imprimir (minha_lista)
Resultado
Exemplo 2: Classificando uma lista de inteiros
A função sort () também pode classificar uma lista de inteiros em ordem crescente ou decrescente.
No exemplo a seguir, iremos declarar uma lista de inteiros e classificá-la em ordem crescente e decrescente.
#declarar uma lista de inteirosnumList = [10,9,2,3,1,4,5,8,7]
#impressão da lista original
imprimir ("A lista original é:")
imprimir (numList)
#sorting a lista em ordem crescente
numList.ordenar()
#printing a lista de classificação de ordem crescente
imprimir ("A lista classificada em ordem crescente:")
imprimir (numList)
#sorting a lista em ordem crescente
numList.classificar (reverso = verdadeiro)
#printing a lista ordenada de ordem decrescente
print ("A lista classificada em ordem decrescente:")
imprimir (numList)
Resultado
A lista de números inteiros agora foi classificada em ordem crescente e decrescente.
Exemplo 3: Classificando uma lista de números de ponto flutuante
A função sort () também é aplicável a uma lista de números de ponto flutuante.
No exemplo a seguir, classificaremos uma lista de números de ponto flutuante em ordem crescente e decrescente.
#declarar uma lista de inteirosnumList = [1.5,1.2,4.5,10.6,11.5,3.3,3.83,3.85]
#impressão da lista original
imprimir ("A lista original é:")
imprimir (numList)
#sorting a lista em ordem crescente
numList.ordenar()
#printing a lista de classificação de ordem crescente
imprimir ("A lista classificada em ordem crescente:")
imprimir (numList)
#sorting a lista em ordem crescente
numList.classificar (reverso = verdadeiro)
#printing a lista de classificação de ordem decrescente
print ("A lista classificada em ordem decrescente:")
imprimir (numList)
Resultado
A lista de números de ponto flutuante agora foi classificada em ordem crescente e decrescente.
Exemplo 4: Classificando uma lista de itens do dicionário
Um dicionário pode ser colocado dentro de uma lista como um elemento.
No exemplo a seguir, vamos classificar os elementos do dicionário em uma lista enquanto criamos um dicionário de alunos. Vamos classificar os elementos com base em seus valores de idade.
# Uma função que retorna o valor 'ano':def ageFunc (ele):
return ele ['idade']
#declarar uma lista de dicionários de alunos
alunos = [
'nome': 'Marca', 'e-mail': '[e-mail protegido]', 'idade': 28,
'nome': 'João', 'e-mail': '[e-mail protegido]', 'idade': 23,
'nome': 'Albert', 'email': '[email protegido]', 'idade': 21,
'nome': 'Cameron', 'email': '[email protegido]', 'idade': 27,
'nome': 'Taylor', 'email': '[email protegido]', 'idade': 25
]
#sorting the list
alunos.classificar (chave = ageFunc)
#printing a lista classificada
imprimir (alunos)
Resultado
Conclusão
A função sort () é uma função embutida em Python que classifica uma lista de elementos. A função sort () pode receber dois parâmetros opcionais, i.e., reverso e chave. Este artigo explicou como usar a função Python sort () em detalhes com vários exemplos.