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.

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base