Lista de elementos comunes
Alberto Valverde
alberto en toscat.net
Jue Mar 22 19:28:59 CET 2007
On Mar 22, 2007, at 7:24 PM, Alberto Valverde wrote:
>
> On Mar 22, 2007, at 7:16 PM, Oswaldo Hernández wrote:
>
>> Hola a todos,
>>
>> Me gustaria saber si hay alguna forma elegante de resolver esto:
>>
>> Una lista con un numero indeterminado de tuplas:
>> lista = [ (1,2,3), (1,3,4,5), (3, 1) ]
>>
>> Necesito crear una nueva lista que contenga los elementos comunes
>> a todas las tuplas
>> En esta caso el resultado deberia ser: [1,3]
>>
>> Lo unico que se me ocurre es hacer un bucle e ir comprobando
>> elemento por elemento si esta contenido en las demas tuplas.
>>
>> ¿Alguna sugerencia?
>
> Utilizando los sets (en python <2.4 haz "from sets import Set as set")
>
> comunes = set()
> for tupla in lista:
> comunes &= set(tupla)
Oops, eso está mal, mejor:
comunes = set(lista[0])
for tupla in lista[1:]:
comunes &= set(tupla)
Alberto
Más información sobre la lista de distribución Python-es