Hola lista. Tengo una duda. Existirá alguna forma compacta de compar distintos arreglos y obtener otra lista con todos los elementos coincidentes en cada una de ellas?
Me explico. Si tuviera esto:
Debiería retornar:
Por otro caso con esto:
Código:
[['a','b','c'],
['a','c']]
Esto:
y con esto:
Código:
[['a','b','c'],
['a','c','d],
['b','d','c'],]
Sólo retornaría esto:
Bueno, eso es. Se que podría darme la vuelto recorrriendo las listas y preguntando por cada elemento, pero me preguntaba si existencia un método más corto, pythonesco de resolver el tema.
Saludos.
Bueno al final lo hice con intersection:
Código:
def comparacion(matriz):
try:
retorno = matriz[0]
for i in xrange(1,len(matriz)):
retorno = list(set(retorno).intersection(set(matriz[i])))
return retorno
except:
pass
return []
No se si seŕa la mejor manera de resolver el problema, pero funciona.
Saludos.