[Python] soluzione con modulo itertools

Carpediem i.carpediem a tiscali.it
Ven 4 Maggio 2018 19:31:02 CEST


Buonasera a tutti,

oggi stavo cercando una soluzione per risolvere un problema che a farlo 
manualmente mi ha portato via molto tempo lasciandomi anche il dubbio 
che tutto sia ok: ho 5 nomi che devo incrociare tra loro prendendone 4 
alla volta. Le combinazioni buone sono tutte quelle possibili per cui, 
ad esempio, nome1, nome2, nome3, nome4 è cosa diversa da nome1, nome2, 
nome4, nome3 e così via.

In rete ho trovato qualcosa che riguarda il modulo itertools che si 
avvicina molto al risultato che voglio ottenere:

from itertools import product
combo_pack = product("abcde", repeat = 4)
for combo in combo_pack:
    print ("".join(combo))

il risultato è l'incrocio di ognuna delle singole lettere prese quattro 
per volta escludendo di volta in volta la quinta lettera.

La domanda è la seguente: come faccio ad ottenere lo stesso risultato 
chiedendo di incrociare non le 5 lettere di una singola stringa ma le 5 
stringhe di cui vi parlavo?

Grazie.



Maggiori informazioni sulla lista Python