[Python] impostare una condizione costruendo una lista

simone gabbriellini simone.gabbriellini a gmail.com
Sab 16 Gen 2010 16:08:29 CET


sì, scusa, era ovviamente un 10... ;)

grazie davvero per il tuo aiuto!
simone

Il giorno 16/gen/2010, alle ore 12.15, Pietro Battiston ha scritto:

> Il giorno sab, 16/01/2010 alle 11.45 +0100, simone gabbriellini ha
> scritto:
>> Salve,
>> 
>> sto cercando di costruire una lista di tuple, in questo modo:
>> 
>>>>> [ (i, e) for i in range(0,11) for e in range(i+1,3+i) ]
>> 
>> [(0, 1), (0, 2), (1, 2), (1, 3), (2, 3), (2, 4), (3, 4), (3, 5), (4, 5), (4, 6), (5, 6), (5, 7), (6, 7), (6, 8), (7, 8), (7, 9), (8, 9), (8, 10), (9, 10), (9, 11), (10, 11), (10, 12)]
>> 
>> dato che queste coppie rappresentano collegamenti tra dieci nodi di un grafo regolare, vorrei riuscire ad impostare una condizione tale per cui le ultime tre tuple diventino:
>> 
>> (9, 1) (10, 1) (10, 2)
>> 
>> è possibile ottenere questo risultato direttamente all'interno di questa lista oppure devo costruirne una seconda e poi unirle?
>> 
> 
> Se fai solo questo cambiamento, hai indici da 0 a 11, quindi se ho
> capito cosa intendi bene hai _undici_ nodi di un grafo.
> 
> Ammettendo quindi che l'11 da sostituire con un 10, ti torna
> 
> [ (i, e%10) for i in range(10) for e in range(i+1,3+i) ]
> 
> o se preferisci
> 
> [ (i+1, e%10+1) for i in range(10) for e in range(i+1,3+i) ]
> 
> ?
> 
> ciao
> 
> Pietro
> 
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python



Maggiori informazioni sulla lista Python