Maison >développement back-end >Tutoriel Python >Comment éliminer les boucles imbriquées pour les combinaisons de paramètres dans le code ?

Comment éliminer les boucles imbriquées pour les combinaisons de paramètres dans le code ?

DDD
DDDoriginal
2024-11-26 04:29:13654parcourir

How to Eliminate Nested Loops for Parameter Combinations in Code?

Élimination des boucles imbriquées pour les combinaisons de paramètres

Lors du test de code avec de nombreuses combinaisons de paramètres, l'utilisation de boucles for imbriquées peut entraîner un code alambiqué. Heureusement, il existe des méthodes pour contourner cette profondeur.

Utilisation d'itertools.product

La fonction itertools.product peut être utilisée pour générer des combinaisons sans imbrication. En voici une illustration :

x1 = range(min1, max1, step1)
x2 = range(min2, max2, step2)
x3 = range(min3, max3, step3)
...

for v1, v2, v3, v4, v5, v6 in itertools.product(x1, x2, x3, x4, x5, x6):
    do_something_with(v1, v2, v3, v4, v5, v6)

Une version plus condensée est présentée ci-dessous :

ranges = [
    range(min1, max1, step1),
    range(min2, max2, step2),
    range(min3, max3, step3),
    ...
]

for v1, v2, v3, v4, v5, v6 in itertools.product(*ranges):
    do_something_with(v1, v2, v3, v4, v5, v6)

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn