La función Python sorted() devuelve una lista ordenada del objeto iterable.
Sorted() ordena cualquier secuencia (lista, tupla) y siempre devuelve una lista con los elementos ordenados, sin modificar la secuencia original.
Sintaxis: sorted(iterable, key, reverse)
Parámetros: sorted toma tres parámetros de los cuales dos son opcionales.
- Iterable: secuencia (lista, tupla, string) o colección (diccionario, conjunto, conjunto congelado) o cualquier otro iterador que deba ordenarse.
- Clave (opcional): una función que serviría como clave o base de comparación de clasificación.
- Inverso (opcional): si se establece en verdadero, entonces el iterable se ordenará en orden inverso (descendente), por defecto se establece como falso.
Ejemplo de función ordenada() de Python
Ejemplo 1: Lista ordenada() de Python
Python3
x = [2, 8, 1, 4, 6, 3, 7] print("Sorted List returned :"), print(sorted(x)) print("\nReverse sort :"), print(sorted(x, reverse=True)) print("\nOriginal list not modified :"), print(x)
Producción:
Sorted List returned : [1, 2, 3, 4, 6, 7, 8] Reverse sort : [8, 7, 6, 4, 3, 2, 1] Original list not modified : [2, 8, 1, 4, 6, 3, 7]
Ejemplo 2: ordenar diferentes tipos de datos
Python3
# List x = ['q', 'w', 'r', 'e', 't', 'y'] print(sorted(x)) # Tuple x = ('q', 'w', 'e', 'r', 't', 'y') print(sorted(x)) # String-sorted based on ASCII translations x = "python" print(sorted(x)) # Dictionary x = {'q': 1, 'w': 2, 'e': 3, 'r': 4, 't': 5, 'y': 6} print(sorted(x)) # Set x = {'q', 'w', 'e', 'r', 't', 'y'} print(sorted(x)) # Frozen Set x = frozenset(('q', 'w', 'e', 'r', 't', 'y')) print(sorted(x))
Producción:
['e', 'q', 'r', 't', 'w', 'y'] ['e', 'q', 'r', 't', 'w', 'y'] ['h', 'n', 'o', 'p', 't', 'y'] ['e', 'q', 'r', 't', 'w', 'y'] ['e', 'q', 'r', 't', 'w', 'y'] ['e', 'q', 'r', 't', 'w', 'y']
Ejemplo 3: Python ordenado al revés
Python3
# Python3 code to demonstrate # Reverse Sort a String # using join() + sorted() + reverse # initializing string test_string = "geekforgeeks" # printing original string print("The original string : " + str(test_string)) # using join() + sorted() + reverse # Sorting a string res = ''.join(sorted(test_string, reverse = True)) # print result print("String after reverse sorting : " + str(res))
Producción:
The original string : geekforgeeks String after reverse sorting : srokkggfeeee
Ejemplo 4: Python ordenado() lambda
Python3
# Python code to demonstrate # Reverse Sort a String # using sorted() + reduce() + lambda # import the module import functools # initializing string test_string = "geekforgeeks" # printing original string print("The original string : " + str(test_string)) # using sorted() + reduce() + lambda # Reverse Sort a String res = functools.reduce(lambda x, y: x + y, sorted(test_string, reverse=True)) # print result print("String after reverse sorting : " + str(res))
Producción:
The original string : geekforgeeks String after reverse sorting : srokkggfeeee
Python ordenado() clave
sorted() tiene un parámetro opcional llamado ‘clave’ que toma una función como su valor. Esta función clave transforma cada elemento antes de ordenar, toma el valor y devuelve 1 valor que luego se usa dentro de la ordenación en lugar del valor original. Por ejemplo, si pasamos una lista de strings en sorted(), se ordena alfabéticamente. Pero si especificamos key = len, es decir, damos la función len como clave, entonces las strings se pasarán a len y el valor que devuelve, es decir, la longitud de las strings, se ordenará. Esto significa que las strings se ordenarían en función de su longitud.
Python3
L = ["cccc", "b", "dd", "aaa"] print("Normal sort :", sorted(L)) print("Sort with len :", sorted(L, key=len))
Producción:
Normal sort : ['aaa', 'b', 'cccc', 'dd'] Sort with len : ['b', 'dd', 'aaa', 'cccc']
Key también puede tomar funciones definidas por el usuario como su valor para la base de clasificación.
Python3
# Sort a list of integers based on # their remainder on dividing from 7 def func(x): return x % 7 L = [15, 3, 11, 7] print("Normal sort :", sorted(L)) print("Sorted with key:", sorted(L, key=func))
Producción:
Normal sort : [3, 7, 11, 15] Sorted with key: [7, 15, 3, 11]
Este artículo es una contribución de Harshit Agrawal . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA