usando lo strumento itertools
, ho tutte le possibili permutazioni di una determinata lista di numeri, ma se la lista è la seguente:Come generare permutazioni di una lista senza "spostare" gli zeri. in Python
List=[0,0,0,0,3,6,0,0,5,0,0]
itertools
non "sa" che l'iterazione gli zeri è sprecato lavoro , per esempio, i seguenti iterazioni appariranno nei risultati:
List=[0,3,0,0,0,6,0,0,5,0,0]
List=[0,3,0,0,0,6,0,0,5,0,0]
essi sono uguali ma itertools
prende solo il primo zero (per esempio) e lo sposta al quarto posto nella lista e viceversa.
La domanda è: come posso ripetere solo alcuni numeri selezionati e lasciato da solo altri come zero? può essere con o senza itertools
.
Usa qualcosa come 'output2 = list (set (output))', dove 'output' è quello che hai ottenuto da' itertools'. –
Ho bisogno di iterare dei numeri in tutte le posizioni all'interno della lista, lasciando da parte lo zero. –
e ci sei. (il mio nuovo, terzo approccio, risposta) – jsbueno