Classificando valores é uma prática comum na maioria das linguagens de programação. Devido a isso, e por causa do foco de Python em coleções de dados, tais como listas , bibliotecas Python conter um método tipo , chamado de " ordenados ", que lida com operações de classificação . E, embora o tipo de dados lista também tem o seu próprio método de classificação, o método externo " ordenada " representa uma opção mais versátil em muitas situações. O List.sort () Método
Para ordenar listas no lugar, um programador normalmente usaria o método " sort () " interno para o tipo de dados de lista. O método de classificação tem a lista atual e classifica -lo para ordem crescente, como neste exemplo :
>>> l = [ 5, 4, 7, 2, 1]
>>> l.sort ()
>>> l
[1 , 2, 4 , 5, 7 ]
A lista será agora permanecem classificadas onde o programador deve decidir passá-lo ou usá-lo .
o "Organizados () " Método
o "Organizados ()" método executa a mesma operação sobre a sua utilização mais básica . Tomando uma lista , o método ordenado irá classificar os valores da lista em ordem ascendente :
>>> l2 - [6 , 8, 4 , 3, 2 , 5]
>>> ordenados (L2)
[ 2 , 3 , 4 , 5, 6 , 8]
Tanto o list.sort ( ) e ordenados ( ) métodos também aceitar um "reverso" argumento, que irá classificar os valores em ordem decrescente :
>>> l.sort (reverse = True )
>>> l < br >
[7 , 5, 4 , 2, 1]
>>> ordenados ( l2 , reverse = True )
>>> l2 < br >
[8 , 6, 5 , 4, 3 , 2]
Classificando listas de valores
Certas listas podem conter valores com base na real organização de dados , em vez de apenas uma lista de números ou strings. Um grupo de listas que contém o nome , a idade eo ID de um empregado pode ser semelhante a estes exemplos :
>>> e1 = [ 'Bob' , 29, 1]
> ; >> e2 = [ 'Jane' , 27, 2]
>>> e3 = [' Jill ' , 31, 3]
Um programador classificando estas listas pode querer classificar pelo segundo valor que representa a idade. O programador pode dar uma "chave" parâmetro extra exclusivo para a classe ordenada que permite ao programador classificar com base em valores específicos , como neste exemplo :
>>> operador de importação
>>> funcionários = [ E1, E2, E3 ] //uma lista de listas de empregados
>>> ordenados (empregados , key = operator.itemgetter (1) ) < br >
[[ 'Jane' , 27, 2], [ 'Bob' , 29, 1], [ ' Jill ' , 31, 3] ]
Métodos e pesquisa
a classe ordenada também permite que um programador para ordenar listas com base nos valores de retorno de chamadas de método , usando a tecla " methodcaller " como um argumento. Por exemplo , o programador pode querer classificar os valores com base no número de ocorrências da letra "x" em cada entrada, como neste exemplo :
>>> operador de importação
>>> l4 = [' rrrxxxyxx ', ' xxxtx ', ' x' ]
>>> ordenados ( l4 , key = operator.methodcaller (' count' , ' x '))
[' x ',' xxxtx ',' rrrxxxyxx ']