permutaciones con listas

Chema Cortes py en ch3m4.org
Dom Ene 27 14:20:27 CET 2008


El Sunday 27 January 2008 13:57:50 Arturo Muñoz Tolosa escribió:
> Bueno muchas gracias de antemano, mi duda es la siguiente quiero hacer
> una funcion que tome una lista de listas las cuales contienen digamos
> numeros, entonces yo quiero formar unas lista con un elemento de la
> primera lista, un elemento de la segunda, un elemento de la tercera,...
> despues que forme la primera lista la quiero guardar una lista, la
> segunda y asi para tener todas las posibilidades que hay. Espero haberme
> explicado hare un bosquejo
>
>
> listaDeListas[[1,2,3],[4,5,6],[7,8,9]]
>
> Entonces los diferentes resultados serian [1,4,7] [1,4,8] [1,4,9]
> [2,4,7] [2,4,8] y esas listas las quiero guardar en una lista
> es muy complicado?

Si el número de listas es fijo, la solución más simple es ésta:

[[i,j,k] for i in L1 for j in L2 for k in L3]

En el caso más general:

def listaDeListas(*listas):
  res=[()]
  for lista in listas:
    res=[i+(j,) for i in res for j in lista]
  return res
------------ próxima parte ------------
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes


Más información sobre la lista de distribución Python-es