Maison > Article > développement back-end > Comment générer efficacement toutes les combinaisons de longueur n à partir d'une liste en Python ?
Obtenir toutes les (n-choisir-k) combinaisons de longueur n
Lorsque vous travaillez avec une liste de nombres, il peut être nécessaire de générer toutes les combinaisons d'une longueur spécifiée n à partir de cette liste. Ceci peut être réalisé efficacement en utilisant le module itertools en Python.
Pour obtenir ces combinaisons, utilisez la fonction itertools.combinations(). Cette fonction prend deux arguments : la liste d'entrée et la longueur n souhaitée. Il renvoie un itérateur qui génère toutes les combinaisons possibles de longueur n dans l'ordre.
Par exemple, considérons la liste [1, 2, 3, 4] et la longueur n = 3. En utilisant itertools.combinations(), on peut obtenir les combinaisons suivantes :
import itertools for comb in itertools.combinations([1, 2, 3, 4], 3): print(comb)
Sortie :
(1, 2, 3) (1, 2, 4) (1, 3, 4) (2, 3, 4)
Cette approche est efficace et facile à implémenter, ce qui en fait une solution pratique pour générer des combinaisons d'une longueur spécifiée à partir d'une liste de nombres.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!