[Python] iterazione incontrollata

Carpediem i.carpediem a tiscali.it
Dom 26 Apr 2020 15:26:13 CEST


Il 26/04/2020 13:28, Francesco Pischedda ha scritto:
> Buondí
>
> Il giorno dom 26 apr 2020 alle ore 13:02 Carpediem 
> <i.carpediem a tiscali.it <mailto:i.carpediem a tiscali.it>> ha scritto:
>
>     Buongiorno lista, approfittando di questo periodo, ho ripreso a
>     cimentarmi col caro python e mi sono imbattutto in una situazione
>     che non riesco a risolvere:
>
>     ho due liste; nella prima (capitali) sono riportati i nomi delle
>     principali città del mondo (una trentina) e nella seconda lista,
>     (temperature) in corrispondenza di posizione di ogni capitale, la
>     temperatura massima della giornata.
>
>     volevo fare in modo che queste due liste venissero ordinate in
>     modo tale che temperature e nomi delle capitali vengano riportate
>     in ordine decrescente sulla base delle temperature.
>
>
> [...]
>
>     Suggerimenti? Soluzioni?
>
> una possibile soluzione potrebbe essere la seguente
>
> >>> cities = ["Rome", "Berlin", "Paris"]
> >>> temperatures = [25, 17, 21]
> >>> sorted(zip(cities, temperatures), key=lambda t: t[1])
> [('Berlin', 17), ('Paris', 21), ('Rome', 25)]
>
> Se hai dubbi chiedi pure.


Ok, forse avrei fatto meglio a non tentare, per semplificare il 
discorso, a modificare i termini dell'esempio.

in realtà, nella lista che vi ho indicato come capitali, ho trentuno 
numeri (da zero a trenta) e nella seconda lista altrettanti numeri che 
però possono avere valori che vanno da zero a 200 e che vengono 
aggiornati di volta in volta

ho quindi bisogno che le liste restino tali in modo da continuare ad 
operare come normalmente si fa con le liste per effettuare successive 
operazioni. Tra l'altro, sulle liste di origine, ho molte altre linee di 
codice che eseguono comandi

per altri calcoli e vorrei quindi restassero invariate. Questo è il 
motivo per cui, tra l'altro, avevo immaginato di creare due nuove liste 
da poter utilizzare per il solo specifico caso. Non posso quindi 
considerare stringhe come "roma", "berlino" ecc

proprio perchè in realtà si tratta di numeri interi. Per non confondervi 
con i doppi numeri ho immaginato di modificare i termini di ciò che 
compone ogni singola stringa ma forse vi ho messo fuori strada.

quindi in realtà ad un numero ne dovrà corrispondere un altro. per esempio:

lista_uno = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 
17, 18 , 19 , 20 ...)

lista_due =(50, 30, 26, 48, 50, 13, 9, 15, 61, 2, 0, 26, 45, 12, 2, 8, 
18, 33, 22, 1, 40 ...)

quello che voglio ottenere è questo:

lista_uno = (8,  0,  4,  3, 12, 20, 17, 1, 2, 11, 18, 16, 7, 5, 11, 6, 
15, 9, 14, 19, 10 ...)

lista_due = (61, 50, 50, 48, 45, 40, 33, 30, 26, 26, 22, 18, 15, 13, 12, 
9, 8, 2, 2, 1, 0 ...)

o al limite:

nuova_lista_uno = (8,  0,  4,  3, 12, 20, 17, 1, 2, 11, 18, 16, 7, 5, 
11, 6, 15, 9, 14, 19, 10 ...)

nuova_lista_due = (61, 50, 50, 48, 45, 40, 33, 30, 26, 26, 22, 18, 15, 
13, 12, 9, 8, 2, 2, 1, 0 ...)

scusatemi e grazie ancora.

>
> Ciao,
> Francesco
> -- 
> "I really detest the use of the word "training" in relation to 
> professional activities. Training is what you do to dogs. What you 
> should be doing with people is educating them, not training them. 
> There is a big, big difference." - Ron Garret
>
> "Unix IS user friendly. It's just selective about who its friends are"
>
> "Nevertheless I still think it’s a bad idea to make things harder for 
> ourselves if we can avoid it."
>
> "C is quirky, flawed, and an enormous success."
>                                    -- Dennis Ritchie
>
> "Shipping is a feature. A really important feature. Your product must 
> have it."
>
> "There is no such a thing as a temporary change or workaround: In most 
> cases, workarounds are tech debt."
>
> "La gatta frettolosa ha fatto i gattini ciechi"
>
>
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> https://lists.python.it/mailman/listinfo/python
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20200426/0dd61da5/attachment-0001.html>


Maggiori informazioni sulla lista Python