Maison  >  Article  >  développement back-end  >  Comment sortir des boucles imbriquées en Python sans exceptions ?

Comment sortir des boucles imbriquées en Python sans exceptions ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-03 20:56:29207parcourir

How to Break Out of Nested Loops in Python Without Exceptions?

Sortir des boucles imbriquées sans exceptions

En Python et dans de nombreux autres langages de programmation, sortir des boucles imbriquées peut être une tâche fastidieuse. Lancer une exception est une approche courante, mais ce n'est pas toujours la solution la plus élégante ou la plus efficace.

Il existe d'autres moyens de sortir des boucles imbriquées sans utiliser d'exceptions. Une approche consiste à utiliser les instructions break et else conjointement. Considérons le code suivant :

<code class="python">for x in range(10):
    for y in range(10):
        print(x * y)
        if x * y > 50:
            break
    else:
        continue  # only executed if the inner loop did NOT break
    break  # only executed if the inner loop DID break</code>

Dans ce code, lorsque la condition x * y > 50 est rencontré à l’intérieur de la boucle imbriquée, il sort immédiatement de la boucle interne. Cependant, avant de poursuivre la boucle externe, le bloc else associé à la boucle interne est exécuté. Cela permet d'effectuer tout nettoyage nécessaire ou toute action supplémentaire avant de continuer.

Le même principe peut être appliqué à des niveaux d'imbrication plus profonds, comme le démontre l'exemple suivant :

<code class="python">for x in range(10):
    for y in range(10):
        for z in range(10):
            print(x, y, z)
            if (x * y * z) == 30:
                break
        else:
            continue
        break
    else:
        continue
    break</code>

Cette approche offre une manière plus structurée et intuitive de sortir des boucles imbriquées. En utilisant les instructions break et else, vous pouvez contrôler le flux de votre programme plus efficacement sans recourir à des exceptions.

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