Ordenar lista en python - Super fácil!
En este ejemplo se muestra una clase llamada TestOrdenamiento, que posee una lista de elementos definida dentro del constructor, y posee un método que se encarga de ordenarla de mayor a menor.
testordenamiento.py
Espero que les haya sido útil, saludos!
testordenamiento.py
class TestOrdenamiento:
def __init__(self):
'''Constructor. Genera una lista nueva.'''
self.lista = [4, 1, 5, 25, 2, 7, 0, -10, -100]
def ordenarMayorAMenor(self):
'''Ordena la lista de mayor a menor.'''
cmp = lambda x,y: self.__cmpMayorMenor(x, y)
self.lista.sort(cmp)
def mostrar(self):
print self.lista
def __cmpMayorMenor(self, x, y):
'''Comparador. Este método define la forma en la que se compararán
dos elementos de la lista. En este caso se comparan de mayor a
menor.'''
if x < y:
return -1
elif x == y:
return 0
else:
return 1
Es bastante sencillo y entendible. Este se podría implementar así: main.py
#!/usr/bin/env python try: import sys import testordenamiento except ImportError, err: print "Error al intentar cargar un módulo. %s" % (err) sys.exit(2) def main(): # Primero generamos la lista y la mostramos (desordenada) ord = testordenamiento.TestOrdenamiento() ord.mostrar() # Luego la ordenamos y la volvemos a mostrar ord.ordenar() ord.mostrar() return 0 if __name__ == '__main__': main()
Espero que les haya sido útil, saludos!
muchas gracias
ResponderEliminar