[Python] Dove sbaglio?

Marco Beri marcoberi a gmail.com
Gio 30 Apr 2020 18:54:01 CEST


On Thu, Apr 30, 2020 at 6:18 PM Carpediem <i.carpediem a tiscali.it> wrote:

> Grazie Alessandro. Mi hai fatto notare l'assenza dell'istruzione break e
> ora che l'ho inserita, il programma termina la sua esecuzione.
>
> Purtroppo, non mi restituisce ciò che mi aspetto e continuo a non capire
> perchè. L'ordinamento che cerco, è in
>
> relazione con l'indice dei numeri della lista di riferimento e
> utilizzare il metodo sorted() per quel che ho visto, o compreso, non mi
> è di aiuto.
>
> Partendo da questo:
>
> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
> 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36]
>
> [22, 0, 18, 34, 20, 7, 2, 1, 30, 22, 55, 47, 53, 49, 52, 38, 12, 41, 29,
> 5, 11, 44, 26, 33, 40, 13, 50, 39, 4, 21, 45, 3, 53, 32, 6, 25, 55]
>
> volevo ottenere questo:
>
> [10, 36, 12, 32, .............]
>
> [55, 55, 53, 53, 52, ......]
>

Se guardi la documentazione di cosa fanno zip e sorted (che ha un parametro
reversed) vedrai che quello che vuoi fare è ottenibile con poche istruzioni:

>>> riepilogo_numeri_singoli = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
...                             25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36]
>>>
>>> ritardo_numeri_singoli = [22, 0, 18, 34, 20, 7, 2, 1, 30, 22, 55, 47,
53, 49, 52, 38, 12, 41, 29, 5, 11, 44, 26, 33, 40, 13, 50, 39, 4, 21,
...                           45, 3, 53, 32, 6, 25, 55]
>>>
>>> ritardo_numeri_singoli_ordine_decrescente , numeri_singoli_in_ordine =
zip(*sorted(zip(ritardo_numeri_singoli, riepilogo_numeri_singoli),
reverse=True))
>>>
>>> ritardo_numeri_singoli_ordine_decrescente
(55, 55, 53, 53, 52, 50, 49, 47, 45, 44, 41, 40, 39, 38, 34, 33, 32, 30,
29, 26, 25, 22, 22, 21, 20, 18, 13, 12, 11, 7, 6, 5, 4, 3, 2, 1, 0)
>>>
>>> numeri_singoli_in_ordine
(36, 10, 32, 12, 14, 26, 13, 11, 30, 21, 17, 24, 27, 15, 3, 23, 33, 8, 18,
22, 35, 9, 0, 29, 4, 2, 25, 16, 20, 5, 34, 19, 28, 31, 6, 7, 1)
>>>


Ciao.
Marco.
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20200430/8ee780b2/attachment.html>


Maggiori informazioni sulla lista Python