Le python landais

La boucle for … in ...


Plan du chapitre :


1. Pour découvrir la boucle for ... in ... .
2. Introduction.
3. La boucle for … in ... en Python.
4. La boucle for pour parcourir une chaîne de caractères.




1) Pour découvrir la boucle for ... in ... .


Reeborg



2) Introduction.

Dans certaines situations, nous sommes amenés à répéter plusieurs fois de suite une même tâche. Nous avons déjà vu que pour éviter de répéter la même instruction plusieurs fois, nous avions recours en informatique à des boucles.

Deux types de situation peuvent se présenter :


Remarque :
La variable i joue ici le rôle d'un compteur : elle compte les tours de boucles réalisés.




3) La boucle for … in ... en Python.

En anglais, range signifie ampleur, gamme, envergure, étendue. Même si cette traduction n'est pas correcte, nous penserons intervalle.

Testons ces quelques lignes :
>>> for i in range(1,4) :
	print (i)
--> Terminons par Enter; que se passe-t-il ?
--> Quelles sont les valeurs qui ont été prises par i ?
--> Traduire en français « for i in range (1,4)» :
--> Ce que nous pouvons encore comprendre comme : 1 <= i < 4, ou encore : 1 <= i <= 4-1.



variable Attention :
Dans les sujets de Bac en mathématiques, nous trouverons la syntaxe suivante :
Pour i allant de 1 à N; sous-entendu, N compris.

En Python, for i in range (1,N) : s'arrête à N-1 : donc N non compris.
Pour aller jusqu'à N, nous taperons : for i in range(1,N+1) :.



Remarques :
1. Comme les instructions if et while, l’instruction «  for … in … » amorce une séquence d'instructions.
Le double point à la fin de la ligne introduit le bloc d’instructions à répéter, lequel doit obligatoirement se trouver en retrait : être indenté.
La fin du bloc d'instructions à répéter est signalé par la fin de l'indentation.


2. Dans les exercices de mathématiques, les valeurs prises par le compteur de la boucle ont souvent une importance déterminante. C'est pourquoi nous avons privillégié la syntaxe :
for i in range(1,4) :
    print("T'as le bonjour d'Albert !")
Dans un cas comme celui-ci, seul compte le nombre de répétitions, et non les valeurs par lesquelles passe le compteur i.
On peut alors opter pour une syntaxe plus simple qui indique seulement le nombre de répétitions :
for i in range(3) :
    print("T'as le bonjour d'Albert !")
Le compteur i passe alors par les valeurs 0, 1 et 2.


--> Exercices 1, 2, 3, 4, 5.






4) La boucle for pour parcourir une chaîne de caractères.

Jusqu'ici la boucle for a été utilisée pour parcourir une liste de nombres entiers consécutifs : de 1 à 5, par exemple ( for i in range(1,6)).
Ce mécanisme permet de parcourir d'autres d'objets que des listes de nombres entiers. En effet, la boucle for … in … permet parcourir n'importe quel type de liste.
Une chaîne de caractères telle que ''Cléopatre'' est une liste de 9 caractère que Python sait parcourir.
Testons ainsi le programme suivant :
nom = "Cleopatre"
for lettre in nom :
    print (lettre)
--> Résultat ?


--> QCM sur la boucle for ... in ...


--> Exercices 6 et 7.