9.1 Boucle conditionnelle
La boucle for
est parfaite quand on sait
exactement combien de fois on veut exécuter un bloc d'instructions dans
notre boucle. Mais ce n'est pas toujours le cas. Environ la moitié du temps,
il faut exécuter le bloc tant qu'une certaine condition (règle) est vraie.
C'est pourquoi en Python il y a la boucle
while
. Sa forme générale est encore plus simple que celle de
la boucle for :
while condition:
commande1
commande1
commandeN
La boucle s'exécutera tant que condition sera vraie.
Important ! Pour éviter que la boucle ne s'exécute indéfiniment, il faut que quelque chose dans le bloc d'instructions affecte la condition. Pour que cette condition puisse devenir fausse un jour et que la boucle se termine.
Exemple :
Exemple | Explication |
---|---|
|
La boucle affichera les nombres 0, 1, 2, 3, 4 |
Dans la boucle while
, deux choses sont
exécutées en boucle :
- La condition est vérifiée.
- Le bloc d'instructions est exécuté.
Si la condition est vraie, alors le bloc d'instructions s'exécute. Si soudainement la condition est fausse (même si le bloc n'a jamais été exécuté), alors la boucle se termine.
Un autre exemple de boucle while
, combinée
avec l'entrée d'une quantité inconnue de données par l'utilisateur :
Exemple | Explication |
---|---|
|
La boucle imprimera à l'écran toutes les données, tant que l'utilisateur n'aura pas entré le mot "exit". Après cela, la boucle l'imprimera et se terminera. |
9.2 L'opérateur break
En Python, l'opérateur break
est utilisé pour
arrêter immédiatement l'exécution d'une boucle
while
ou d'une boucle for
. Cet
opérateur s'avère extrêmement utile dans des situations où il est nécessaire
de sortir de la boucle avant sa fin normale en fonction de la condition.
L'utilisation de break
augmente la flexibilité de la
gestion du flux d'exécution du programme, permettant de réagir aux
conditions qui changent dynamiquement pendant l'exécution.
Utilisation principale :
for num in range(10):
if num == 5:
break # Arrête la boucle dès que num atteint 5
print(num)
Dans cet exemple, la boucle affichera les nombres de 0 à 4. Dès que num
atteint 5, la boucle est interrompue par l'opérateur break
.
Utilisation dans les boucles infinies :
while True:
response = input("Entrez 'exit' pour sortir : ")
if response == 'exit':
break
Ici, break
est utilisé pour sortir de la boucle infinie
quand l'utilisateur entre 'exit'.
L'opérateur break
est également souvent utilisé pour
interrompre l'exécution des boucles imbriquées, traiter des situations
exceptionnelles où il est nécessaire d'arrêter immédiatement les actions,
ainsi que pour interrompre les processus dans les applications multithread
ou réseau.
Par exemple, dans les tâches de recherche ou de tri, où après avoir trouvé l'élément requis, il n'est plus nécessaire de continuer la boucle :
elements = [1, 2, 3, -99, 5]
# Recherche du premier élément négatif
for element in elements:
if element < 0:
print("Élément négatif trouvé : ", element)
break
Les meilleures pratiques incluent l'utilisation de
break
avec sagesse pour ne pas compliquer la logique du
programme et la rendre difficile à comprendre. Une bonne pratique est de
commenter les raisons de l'interruption de la boucle, surtout si elles ne
sont pas évidentes du contexte.
L'utilisation de break
doit être justifiée et
raisonnable. Par exemple, pour améliorer la lisibilité et l'efficacité du
code, et pas simplement pour "casser" la logique. Une utilisation efficace
de cet opérateur peut considérablement améliorer la performance des
programmes, surtout dans les algorithmes avec des calculs intensifs.
9.3 L'opérateur continue
L'opérateur continue en Python est un outil puissant pour
gérer le flux d'exécution des boucles.
Il saute le reste du code dans l'itération actuelle de la boucle
et passe à l'itération suivante. Cet opérateur est souvent utilisé dans les
boucles for
et while
pour sauter
certaines conditions sans interrompre toute la boucle.
Principes de base de l'utilisation de l'opérateur continue
Voici comment fonctionne continue dans une boucle simple :
for i in range(10):
if i % 2 == 0:
continue
print(i)
Dans cet exemple, la boucle n'affiche que les nombres impairs de 1 à 9.
Chaque fois que i
est pair (divisible par 2 sans reste),
l'opérateur continue
est déclenché, sautant l'appel de la
fonction print()
et passant à l'itération suivante.
Utilisation de continue
dans des scénarios réels
Filtrage des données : continue
peut être
utilisé pour filtrer préalablement les données avant d'effectuer des
opérations plus complexes dans la boucle.
data = ["apple", "banana", "", "cherry", "date"]
for fruit in data:
if not fruit:
continue # Sauter les chaînes vides
print(fruit.capitalize())
Sauter des conditions spécifiques : Particulièrement utile dans des situations où il faut sauter certains éléments basés sur des conditions complexes.
scores = [92, 85, 99, 78, 82, 100, 67, 88]
for score in scores:
if score < 80:
continue # Sauter les scores bas
print("Félicitations, votre score : ", score)
L'opérateur continue
en Python offre un moyen élégant de
simplifier le code et de le rendre plus lisible en sautant les
éléments non pertinents dans les itérations. Une utilisation excessive
de continue peut compliquer la compréhension des données traitées par la
boucle, surtout dans des boucles complexes avec plusieurs conditions.
Respectez un équilibre raisonnable.
GO TO FULL VERSION