Saltar al contenido

Ordenar una lista en python

Por fin después de tanto trabajar hemos dado con el resultado de esta dificultad que muchos de nuestros usuarios de este sitio web han presentado. Si quieres aportar algún dato puedes dejar tu comentario.

Solución:

Usar abs como key hacia sorted función o list.sort:

>>> lis = [1,-5,10,6,3,-4,-9]
>>> sorted(lis, key=abs, reverse=True)
[10, -9, 6, -5, -4, 3, 1]

Usar:

    l.sort(key= abs, reverse = True)

Las listas se pueden ordenar usando el método sort(). Y el método de clasificación tiene un parámetro, llamado key, que puede pasar una función. Con este parámetro, su lista no se ordenará por los valores de la lista, sino por los valores de su función en la lista.

En su caso, debe usar la función abs(), que devolverá el valor absoluto de los elementos de su lista. Entonces, tu lista

>>> l = [1,-5,10,6,3,-4,-9]

Se ordenará como lo fue

>>>  [abs(1),abs(-5),abs(10),abs(6),abs(3),abs(-4),abs(-9)]

Que debería ser:

>>> [1 ,-4 ,-5 ,6 ,-9 ,10]

Para ordenar de mayor a menor, utilice también el parámetro reverse=True.

No se te olvide difundir esta división si te valió la pena.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *