[Python] impostare una condizione costruendo una lista
simone gabbriellini
simone.gabbriellini a gmail.com
Lun 18 Gen 2010 11:30:45 CET
Salve,
avrei un altro piccolo aiuto da chiedere sullo stesso tema del precedente. supponiamo di avere:
>>> [(i, e%20) for i in range(10, 20) for e in range(i+1,i+3)]
[(10, 11), (10, 12), (11, 12), (11, 13), (12, 13), (12, 14), (13, 14), (13, 15), (14, 15), (14, 16), (15, 16), (15, 17), (16, 17), (16, 18), (17, 18), (17, 19), (18, 19), (18, 0), (19, 0), (19, 1)]
naturalmente, questa volta gli ultimi tre non dovrebbero ricollegarsi a 0 ed 1, ma a 10 e 11:
(18,10),(19,10),(19,11)
esiste un modo? purtroppo non riesco a trovarlo...
grazie,
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