108 of 151 menu

Função sorted

A função sorted retorna uma lista ordenada de objetos iteráveis - lista, tupla, conjunto, dicionário. Por padrão, a função ordena os elementos da lista em ordem alfabética ou em ordem crescente.

No primeiro parâmetro é especificado o objeto a ser ordenado.

No segundo parâmetro opcional do método pode-se especificar o parâmetro reverse, que define a direção da ordenação. Por padrão, ele tem o valor False.

No terceiro parâmetro opcional pode-se especificar uma função de callback com os critérios de ordenação.

Sintaxe

sorted(objeto, [modo de reversão da lista], [função para ordenação])

Exemplo

Vamos ordenar nossa lista em ordem inversa:

lst1 = ['c', 'a', 'd', 'b', 'f', 'e'] lst2 = sorted(lst1, reverse=True) print(lst2)

Resultado da execução do código:

['f', 'e', 'd', 'c', 'b', 'a']

Exemplo

E agora vamos ordenar em ordem inversa a lista composta por números:

lst1 = [10, 8, 2, 6, 14] lst2 = sorted(lst1, reverse=True) print(lst2)

Resultado da execução do código:

[14, 10, 8, 6, 2]

Exemplo

Vamos ordenar nossa lista de letras sem especificar o parâmetro na função sorted:

lst1 = ['c', 'a', 'd', 'b', 'f', 'e'] lst2 = sorted(lst1) print(lst2)

Resultado da execução do código:

['a', 'b', 'c', 'd', 'e', 'f']

Exemplo

E agora vamos ordenar a lista composta por números:

lst1 = [10, 8, 2, 6, 14] lst2 = sorted(lst1) print(lst2)

Resultado da execução do código:

[2, 6, 8, 10, 14]

Exemplo

Vamos ordenar um conjunto:

st = {'a', 'b', 'c', 'd', 'e', 'f'} lst = sorted(st) print(lst)

Resultado da execução do código:

['a', 'b', 'c', 'd', 'e', 'f']

Exemplo

Vamos ordenar uma tupla:

tpl = ('a', 'b', 'c', 'd', 'e', 'f') lst = sorted(tpl) print(lst)

Resultado da execução do código:

['a', 'b', 'c', 'd', 'e', 'f']

Exemplo

Vamos ordenar um dicionário:

dct = { '6': 'f', '2': 'b', '4': 'd', '3': 'c', '1': 'a', '5': 'e' } lst = sorted(dct) print(lst)

Após a execução do código a função retornará uma lista ordenada das chaves do dicionário:

['1', '2', '3', '4', '5', '6']

Exemplo

Também com a função sorted é possível ordenar uma string:

str = 'dacbfe' lst = sorted(str) print(lst)

Mas após a execução também será retornada uma lista ordenada:

['a', 'b', 'c', 'd', 'e', 'f']

Veja também

  • método sort,
    que ordena os elementos de uma lista
  • função filter,
    que filtra objetos iteráveis
bydeenesfrptru