python - Comparing sub items from a list of lists -


i,ve 2 lists:

l = [['red','a1',1],['red','a2',1],['blue','a3',1],['yellow','a4',1]] 

and

k = [['red','a2',1],['blue','a3',1],['yellow','a4',1]] 

so want return this:

result = [0, 1, 1, 1] 

sorry i´ve practice list comprehension little more!!

my function:

def vectors(doc1,doc2,consulta):     res=[]     r = doc1 + doc2 + consulta     e in r:         in doc1:             if i[0] == e[0]:                 i[2] = i[2] + 1         else:             i[2] = 0     return res.append(i[2]) 

the order doesn´t matter, important thing comparison.

best regards!

inefficient easy:

result = [x in k x in l] 

efficient (for large k) more complicated:

kset = set(tuple(x) x in k) result = [tuple(x) in kset x in l] 

Comments

Popular posts from this blog

Detect support for Shoutcast ICY MP3 without navigator.userAgent in Firefox? -

web - SVG not rendering properly in Firefox -

java - JavaFX 2 slider labelFormatter not being used -