Функция sorted
La función sorted devuelve una lista ordenada
de objetos iterables: lista,
tupla, conjunto, diccionario. Por defecto,
la función ordena los elementos de la lista
alfabéticamente o en orden ascendente.
En el primer parámetro se especifica el objeto a ordenar.
En el segundo parámetro opcional del método
se puede especificar el parámetro reverse,
que establece la dirección de la ordenación. Por defecto,
tiene el valor False.
En el tercer parámetro opcional se puede especificar una función callback con los criterios de ordenación.
Sintaxis
sorted(objeto, [modo de inversión de la lista], [función para ordenar])
Ejemplo
Ordenemos nuestra lista en orden inverso:
lst1 = ['c', 'a', 'd', 'b', 'f', 'e']
lst2 = sorted(lst1, reverse=True)
print(lst2)
Resultado de la ejecución del código:
['f', 'e', 'd', 'c', 'b', 'a']
Ejemplo
Y ahora ordenemos en orden inverso una lista compuesta por números:
lst1 = [10, 8, 2, 6, 14]
lst2 = sorted(lst1, reverse=True)
print(lst2)
Resultado de la ejecución del código:
[14, 10, 8, 6, 2]
Ejemplo
Ordenemos nuestra lista de letras sin
especificar el parámetro en la función sorted:
lst1 = ['c', 'a', 'd', 'b', 'f', 'e']
lst2 = sorted(lst1)
print(lst2)
Resultado de la ejecución del código:
['a', 'b', 'c', 'd', 'e', 'f']
Ejemplo
Y ahora ordenemos una lista compuesta por números:
lst1 = [10, 8, 2, 6, 14]
lst2 = sorted(lst1)
print(lst2)
Resultado de la ejecución del código:
[2, 6, 8, 10, 14]
Ejemplo
Ordenemos un conjunto:
st = {'a', 'b', 'c', 'd', 'e', 'f'}
lst = sorted(st)
print(lst)
Resultado de la ejecución del código:
['a', 'b', 'c', 'd', 'e', 'f']
Ejemplo
Ordenemos una tupla:
tpl = ('a', 'b', 'c', 'd', 'e', 'f')
lst = sorted(tpl)
print(lst)
Resultado de la ejecución del código:
['a', 'b', 'c', 'd', 'e', 'f']
Ejemplo
Ordenemos un diccionario:
dct = {
'6': 'f',
'2': 'b',
'4': 'd',
'3': 'c',
'1': 'a',
'5': 'e'
}
lst = sorted(dct)
print(lst)
Después de ejecutar el código, la función nos devolverá una lista ordenada de las claves del diccionario:
['1', '2', '3', '4', '5', '6']
Ejemplo
También con la función sorted se puede
ordenar una cadena:
str = 'dacbfe'
lst = sorted(str)
print(lst)
Pero después de la ejecución también nos devolverá una lista ordenada:
['a', 'b', 'c', 'd', 'e', 'f']