Il s'est avéré que je cherchais des combinaisons et non le produit cartésien. Je dois faire un produit cartésien de plusieurs mots (tous dans une liste).Comment faire un produit cartésien pour les mots dans une liste en utilisant Python
Mon entrée ressemble à ceci:
[[id, [word1,word2,word3]],[id2,[word4,word5,word6]]]
Le produit doit être fait sur les mots dans le premier index dans chaque liste des listes. Signification - sur word1, mots2, et word3 entre eux-mêmes, sur word4, mots5, et word6 entre eux-mêmes et ainsi de suite.
Mon code à ce jour:
for row in x:
row[1] = list(itertools.product(*row[1])
Le problème est que le script fait le produit sur chacune des lettres et non sur chacun des mots.
je reçois quelque chose comme: (w,w,w), (w,o,r), (w,o,d)
, etc.
Le résultat attendu est: (word1,word2), (word1,word3), (word2,word3)
. La même chose pour les autres parties ..
Quel est le résultat attendu, btw? – WorldSEnder
Modifié et ajouté la sortie attendue. – Shachar183