Def. Quota Marco Beri <marcob...@gmail.com>: > 2009/10/22 Michele <mich...@nectarine.it> > >> >> Riparto da capo: ho s1ev e s2ev. >> Con l'algoritmo che mi hai fornito calcolo: >> - quando gli eventi sono attivi contemporaneamente s1 and s2 (actives[2]) >> - quando solo uno dei due eventi è attivo contemporaneamente s1 xor s2 >> (actives[1]) >> - quando non c'è nessuno dei due eventi attivi !s1 and !s2 (actives[0]) >> >> Ora mi stavo chiedendo come potrei calcolare quando almeno uno dei due >> eventi è attivo, cioè s1 or s2, e mi stavo chiedendo come calcolarlo. >> Non posso unire actives[2] e actives[1] perché dovrei fare l'overlap >> degli istanti adiacenti. >> > > Ah! Finalmente ho capito... Beh ti basta prendere tutto cio che` NON e` in > actives[0] no? > Per esempio: > > 0 [[0, 1723], [18550, 87361], [98214, 100000], [101000, 9999999]] > 1 [[1723, 9154], [9307, 9340], [10442, 18550], [87361, 98214], [100000, > 101000]] > 2 [[9154, 9307], [9340, 10442]] > > > Prendendo la riga con 0 hai tutti i momenti in cui nessuno e` attivo. La > "neghi" e hai quelli in cui almeno uno e` attivo. Sempre con quell'esempio: > > 1723 - 18550 > 87361 - 98214 > 100000 - 101000 > > Non va bene cosi`? >
Esatto va benissimo! Quindi diresti che il miglior modo per farlo è: actives_1 = [] for x in range(len(actives[0])-1): actives_1.append((actives[0][x][1], actives[0][x+1][0])) Che ne dici? _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python