Tengo una lista de palabras y necesito generar todas las permutaciones posibles de estas, con una advertencia.Generar subconjuntos de una lista de palabras permutadas en Python
Actualmente uso el siguiente código:
from itertools import permutations
wordlist = ["word1", "word2", "word3"]
for perm in permutations(wordlist):
print "".join(perm)
que da la salida:
word1word2word3
word1word3word2
...
word3word2word1
Sin embargo también necesito que imprima subconjuntos estas palabras, como por ejemplo:
word1
word1word2
word2word1
...
Pero no tengo la menor idea de cómo hacer esto. ¿Por dónde empiezo? ¿Qué debería leer?
Trate de evitar el uso del nombre de 'list', porque' list' es una función incorporada que convierte iterables a las listas. –
Oh gracias, no lo sabía. Eso explica por qué intentar convertir mi iterable a una lista no funcionaba cuando inicialmente escribí este código. Doh! Lo aprecio. He editado la publicación original para reflejar esto, en caso de que alguien más se encuentre con este problema. –
Esto se llama powerset (casi - el powerset también incluye el conjunto vacío) –