En este post vamos a ver distintos métodos y formas de ordenar arreglos o listas en el lenguaje de programación Python.
No vamos a ver cuál es más eficiente, solo vamos a ver los métodos nativos y los métodos manuales, aunque me parece que los métodos nativos (algoritmo Timsort) serán más rápidos y eficientes la mayoría de veces.
Nota: como en otros tutoriales de Python, en este caso me referiré a lista y arreglo como lo mismo.
La forma más fácil y eficiente de ordenar un arreglo en Python es usando funciones nativas. Comencemos viendo la función sort
. Esta función modifica internamente a la lista, de modo que no debemos esperar el valor de retorno.
La función ordena listas de datos primitivos como enteros, flotantes y cadenas. La sintaxis es:
lista.sort()
Te repito que la función no devuelve nada; ordena internamente al arreglo. Veamos el siguiente ejemplo:
Como se puede observar en la salida, al invocar a sort
tendremos el arreglo ya ordenado. Esto no nos conviene si queremos preservar el original, pero para ello veremos una función a continuación.
Puedes probar el código en este enlace.
Ahora veamos la función sorted
. Esta función igualmente es nativa pero no modifica a la lista; sino que regresa el resultado. Funciona así:
El ordenamiento es el mismo, lo que cambia es que esta función no ordena internamente, sino que lo ordena y regresa la copia ordenada.
Otra cosa distinta es que en este caso la función no es invocada a partir del arreglo, sino que se le envía el arreglo a la función.
Puedes probar el código en este enlace.
Por defecto, la función sorted
y sort
ordenan de manera ascendente; es decir, de menor a mayor ya sea numérica o alfabéticamente. Para invertir el orden podemos pasar la opción reverse
.
Veamos el siguiente ejemplo:
En este caso indicando el argumento reverse
en True
, el arreglo será ordenado de manera inversa, es decir, descendente o de mayor a menor, tanto para strings como para enteros y flotantes.
Pruébalo acá.
Hasta el momento hemos visto cómo ordenar arreglos usando sort y sorted, ya sea de enteros o cadenas y de manera ascendente o descendente.
Sin embargo la vida real es más compleja así que te dejo otros tutoriales si por ejemplo tu profesor te solicita implementar el algoritmo quicksort, burbuja, merge sort o selección. También puede que quieras ordenar un arreglo complejo, por ejemplo, uno de diccionarios.
Te dejo también más tutoriales de Python.
En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…
Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…
Hoy vamos a ver programar la impresión de un PDF generado a partir de HTML…
En este tutorial básico de JavaScript con HTML vamos a ver cómo llenar una lista…
En este artículo se presenta una guía para imprimir un PDF a partir de una…
En este post voy a enseñarte cómo imprimir un PDF a partir de su representación…
Esta web usa cookies.
Ver comentarios
NO TE HACES UNA IDEA COMO ME SALVASTE DE TREMENDA FRUSTRACIÓN, TE AMO