Une boucle est utilisée pour itérer sur une collection (c'est-à-dire une liste, un tuple, un dictionnaire, un set ou une chaîne). On a recours aux boucles pour exécuter plusieurs fois une portion du programme. Boucles avec et sans limites Boucle limitée, c'est quand on sait combien de fois on désire exécuter le programme, on utilise généralement une boucle for. Boucle illimitée, c'est quand on ne connaît pas le nombre de fois que l'on souhaite exécuter un programme on choisis une boucle while.
Une boucle for est utilisée pour itérer sur une collection (c'est-à-dire une liste, un tuple, un dictionnaire, un set ou une chaîne).
Elle ressemble moins au mot-clé for des autres langages de programmation et fonctionne plus comme une méthode d'itération que l'on trouve dans les langages de programmation orientés objet.
Avec la boucle for, nous pouvons exécuter un ensemble d'instructions, une fois pour chaque élément d'une liste, d'un tuple, d'un set, etc.
L'exemple suivant Imprime chaque fruit dans une liste de fruits :
fruits = ["pomme ", "orange","banane ", "prune "]
for x in fruits :
print(x)
La boucle for ne nécessite pas de variable d'indexation à définir au préalable.
Boucler sur une chaîne de caractères
Les chaînes de caractères sont des objets itérables. Elles contiennent une collection de caractères.
Exemple Parcourir en boucle les lettres la chaine de cractères "La banane est un fruit exotique" :
chaine = "fruit exotique"
for x in chaine :
print(x)
L'instruction break
L'instruction break permet d'arrêter la boucle avant qu'elle n'ait parcouru tous les éléments :
l'exemple suivant quitte la boucle lorsque la boucle atteint l'élément "banane" :
fruits = ["pomme", "orange","banane", "prune"]
for x in fruits :
if x == "banane":
continue
print(x)
Python boucle for avec la fonction Range()
En programmation, vous souhaitez souvent exécuter un bloc de code plusieurs fois. Pour ce faire, vous utilisez une boucle for.
L'exemple suivant illustre la syntaxe d'une boucle for :
Dans cette syntaxe, l'indice est appelé compteur de boucle. Et n est le nombre de fois que la boucle va exécuter l'instruction.
Le nom du compteur de boucle ne doit pas nécessairement être index, vous pouvez utiliser le nom que vous voulez.
La fonction range() est une fonction intégrée à Python. Elle est similaire à la fonction print() car elle est toujours accessible dans le programme.
La fonction range(n) génère une séquence de n entiers commençant à zéro. Elle augmente la valeur par un jusqu'à ce qu'elle atteigne n.
Ainsi, la fonction range(n) génère une séquence de nombres : 0,1, 2, ...(n-1).
Notez que le nombre final (n) n'est jamais atteint.
Exemple: range(6) n'est pas les valeurs de 0 à 6, mais les valeurs de 0 à 5.
Spécification de la valeur de départ de la plage.
Par défaut, la fonction range() utilise zéro comme valeur de départ de la plage.
Cependant, la fonction range() vous permet de spécifier le nombre de départ comme ceci :
range(début, fin)
Dans cette syntaxe, la fonction range() augmente la valeur de départ de un jusqu'à ce qu'elle atteigne la valeur d'arrêt.
L'exemple suivant utilise une boucle for pour afficher à l'écran cinq nombres, de 1 à 5 :
Par défaut, la fonction range(start, stop) augmente la valeur de départ de un à chaque itération de la boucle.
Pour augmenter la valeur de départ d'un nombre différent, vous utilisez la forme suivante de la fonction range() :
range(début, fin, pas)
Dans cette forme, vous pouvez spécifier la valeur que la fonction range() doit augmenter.
L'exemple suivant affiche tous les nombres pairs de 0 à 10 :
somme=0
for i in range(11):
somme += i
print(somme)
Comment ça fonctionne?
Premièrement, la somme est initialisée à zéro.
Ensuite, on ajoute à la somme les nombres de 0 à 10 à chaque itération.
Enfin, la somme est affichée à l'écran.
L'exemple qui suit va afficher les nombres premier inferieur à 40
result="les nombres premier inferieur à 40 sont : "
for n in range(2, 40):
for x in range(2, n):
if n % x == 0:
break
else: result = result+ str(n)+", "
print(result)
La boucle while
Avec la boucle while, nous pouvons exécuter une série d'instructions tant qu'une condition est vraie.
Exemple Imprimez i tant que i est inférieur à 6 :
Remarque : n'oubliez pas d'incrémenter i, sinon la boucle se poursuivra indéfiniment.
La boucle while nécessite que les variables pertinentes soient prêtes. Dans cet exemple, nous devons définir une variable d'indexation, i, que nous avons définie à 1.
L'instruction break
Avec l'instruction break, nous pouvons arrêter la boucle même si la condition while est vraie :
Exemple Quitter la boucle lorsque i vaut 3 :
i = 1
while i < 6:
print(i)
if i == 3:
break
i += 1
L'instruction continue
Avec l'instruction continue, nous pouvons arrêter la procédure en cours et passer à la suivante :
Exemple Passer à l'itération suivante si i est égal à 3 :
i = 0
while i < 6:
if i == 3:
continue
i += 1
print(i)
L'instruction else
Avec l'instruction else, nous pouvons exécuter un bloc de code une fois que la condition n'est plus vraie :
Exemple Imprimer un message lorsque la condition est fausse :