Heim >Backend-Entwicklung >Python-Tutorial >Wie eliminiere ich verschachtelte Schleifen für Parameterkombinationen im Code?

Wie eliminiere ich verschachtelte Schleifen für Parameterkombinationen im Code?

DDD
DDDOriginal
2024-11-26 04:29:13637Durchsuche

How to Eliminate Nested Loops for Parameter Combinations in Code?

Eliminieren verschachtelter Schleifen für Parameterkombinationen

Beim Testen von Code mit zahlreichen Parameterkombinationen kann die Verwendung verschachtelter for-Schleifen zu verschachteltem Code führen. Glücklicherweise gibt es Methoden, um diese Tiefe zu umgehen.

Verwendung von itertools.product

Die Funktion itertools.product kann verwendet werden, um Kombinationen ohne Verschachtelung zu generieren. Hier ist eine 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)

Eine komprimiertere Version finden Sie unten:

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)

Das obige ist der detaillierte Inhalt vonWie eliminiere ich verschachtelte Schleifen für Parameterkombinationen im Code?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn