[PIPython] Ordinare elementi di una lista

Lethalman lethalman
Ven 14 Gen 2005 14:35:07 CET


Arianna Microchip wrote:
> Salve ragazzi.
> Devo rodinare gli elementi di una lista chiamata occorrenze.
> Fino ad ora la lista (non ordinata) l'ho visualizzata con 
> 
> count = 0
> for n in occorrenze:
>     if n != 0 :
>         print str(count) + ': ' + str(n)
>     count += 1
> 
> quindi ottengo una cosa del tipo 
> 1: 5
> 2: 3
> 4: 8
> 
> saltando gli indici che hanno valore 0 perchè non mi interessano.
> 
> Ora vorrei che li ordinasse, ma con occorrenze.sort() ovviamente cambiano anche gli indici mentre io vorrei che mi restituisse:
> 4: 8
> 1: 5
> 2: 3
> 
> quindi mantenendo davanti l'indice al quale erano assegnati tali numeri.
> Come posso fare?
> 
> Grazie
> 
> 

Con la stessa lista non puoi, salva quella ordinata in un'altra variabile:

sort_occorrenze = sorted(occorrenze)

oppure:

sort_occorrenze = occorrenze[:]
sort_occorrenze.sort()

-- 
www.iosn.it * Amministratore Italian Open Source Network
www.fyrebird.net * Fyrebird Hosting Provider - Technical Department


More information about the Python mailing list