Maison >développement back-end >Tutoriel Python >Comment puis-je quitter les boucles imbriquées avec élégance en Python ?

Comment puis-je quitter les boucles imbriquées avec élégance en Python ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-04 00:58:30655parcourir

How Can I Exit Nested Loops Gracefully in Python?

Sortir des boucles imbriquées : une solution plus propre

Bien que lancer une exception puisse fournir un moyen de quitter prématurément les boucles imbriquées, ce n'est pas le cas. toujours l’approche la plus souhaitable. Heureusement, Python propose des méthodes alternatives pour y parvenir sans recourir à des exceptions.

Une solution élégante consiste à utiliser les mots-clés break et continue :

<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>

L'instruction break quitte immédiatement la boucle la plus interne, tandis que l'instruction continue passe à l'itération suivante de la boucle externe. Cela permet un contrôle précis de la terminaison des boucles en fonction de conditions spécifiques.

Cette approche peut également être étendue à des boucles imbriquées plus profondes :

<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>

Dans ce code, les boucles se terminent lorsque le la condition (x * y * z) == 30 est remplie. En combinant soigneusement les instructions break et continue, vous pouvez créer un flux de contrôle complexe au sein de plusieurs niveaux de boucles. Cela fournit un moyen plus propre et plus maintenable de quitter les boucles imbriquées lorsque cela est nécessaire.

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