Come calcolare le combinazioni in Python
Per trovare le combinazioni possibili di un insieme di elementi in Python uso la funzione combinations() del modulo itertools.
combinations(l, k]
- Il primo argomento è una lista o una tupla con gli elementi da combinare. Possono essere valori numerici o alfanumerici.
- Il secondo argomento è il numero degli elementi nei raggruppamenti.
La funzione calcola la combinazione semplice degli elementi.
Un esempio pratico
Voglio calcolare le combinazioni dei numeri [1,2,3] a gruppi di due.
Importo la funzione combinations() dal modulo itertools.
>>> from itertools import combinations
>>> comb = combinations([1, 2, 3], 2)
Alla variabile comb è assegnata una lista con le combinazioni dell'insieme [1,2,3] a coppie di due.
Per vedere il contenuto uso la funzione list().
>>> list(comb)
[(1, 2), (1, 3), (2, 3)]
Il risultato è una lista con le combinazioni semplici di [1,2,3] con k=2.
La funzione ha combinato gli elementi tra loro a gruppi di due senza ripetizione.
E così via.
Nota. Nelle combinazioni l'ordine degli elementi non ha importanza. Per calcolare i raggruppamenti tenendo conto anche della posizione, in statistica bisogna trovare le disposizioni o le permutazioni. Non le combinazioni.