Bonjour,

Je dois comparer deux listes L1 et L2 sur un critère d'égalité de certaines de leurs valeurs puis d'ajouter L2 à L1 quand la condition est verifiée !!

exemple :

L1 = [ [a,b, x,[n,f,gt],[lo,k,l,m]] , [rt,f, y,[nd,f,gt],[lo,k,l,m]] ]
L2 = [ [x,[g,e,o,m,e,t,r,i,e],i,n,f,o,s1] , [y,[g1,e,o,m,e,t,r,i,e22],i,n,f,o,s2] ]

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
for blk in L1:    
        for clk in L2:
            if blk[2] == clk[0] : # les deux indices correspondent
               blk_nnspl1= copy.copy(blk) # on copie le domaine et ses caractéristiques
               cl = copy.copy(clk)
	       cl.pop(0) # on enleve le numero d'identification car on n'en a plus besoin
               clk1.append(cl)
               blk_nnspl1.append(clk1)
               blk_nnspla.append(blk_nnspl1)
               aku = p_nnspl.index(clk)
               p_nnspl.pop(aku)
	       #print " enfin mon premier block ", blk_nnspl1
            else:
               continue
et je voudrais obtenir la chose suivante :

blk_nnspl1 = [ [a,b, x,[n,f,gt],[lo,k,l,m] , [[g,e,o,m,e,t,r,i,e],i,n,f,o,s1] ], [rt,f, y,[nd,f,gt],[lo,k,l,m],[[g1,e,o,m,e,t,r,i,e22],i,n,f,o,s2] ] ]

Or cela ne marche pas !!

Auriez vous une autre idée de comment trier?

M.