×

[section label= »Introduction » anchor= »introduction »]

Introduction

Les boucles permettent de répéter une certaine opération autant de fois que nécessaire.

Elles peuvent aussi permettre de parcourir certaines séquences pour en extraire des éléments précis.

[alert variation= »alert-danger »]Il s’agit d’un concept essentiel en programmation ![/alert]

cours-python-les-boucles-1

[section label= »Exemple : la table de 7″ anchor= »exemple »]

Exemple simple : la table de 7

Programme affichant la table de multiplication par 7, de 1 * 7 à 10 * 7.

1
2
3
4
5
6
7
8
9
10
print "1 * 7 = ", 1 * 7
print "2 * 7 = ", 2 * 7
print "3 * 7 = ", 3 * 7
print "4 * 7 = ", 4 * 7
print "5 * 7 = ", 5 * 7
print "6 * 7 = ", 6 * 7
print "7 * 7 = ", 7 * 7
print "8 * 7 = ", 8 * 7
print "9 * 7 = ", 9 * 7
print "10 * 7 = ", 10 * 7

Première évolution:

1
2
3
4
5
6
7
8
9
10
11
n = 7
print "1 * ", n, " = ", 1 * n
print "2 * ", n, " = ", 2 * n
print "3 * ", n, " = ", 3 * n
print "4 * ", n, " = ", 4 * n
print "5 * ", n, " = ", 5 * n
print "6 * ", n, " = ", 6 * n
print "7 * ", n, " = ", 7 * n
print "8 * ", n, " = ", 8 * n
print "9 * ", n, " = ", 9 * n
print "10 * ", n, " = ", 10 * n

Utilisation d’une variable pour pouvoir changer de table facilement.

[section label= »La boucle While » anchor= »while »]

La boucle “while”

Permet de répéter un bloc d’instructions tant qu’une condition est vraie.

“while” signifie “tant que” en anglais.

1
2
while condition:
    # bloc d'instructions

Pour notre exemple, nous allons créer une variable qui sera incrémentée dans le bloc d’instruction.
Tant que cette variable sera inférieure à 10, le bloc s’exécutera pour afficher la table.

1
2
3
4
5
n = 7 # Variable contenant le nombre à multiplier
i = 0 # Compteur à incrementer
while i < 10: # Tant que i est strictement plus petit que 10
    print i + 1, " * ", n, " = ", (i + 1) * n # Affichage de la ligne de calcul et du resultat
    i += 1 # i est incrémente de 1 a chaque tour de boucle

  • i est un standard utilisé quand il est question de boucles et de variables “s’incrémentant”.
  • while” signifie ici: “Tant que i est strictement inférieure à 10“.
  • Ne pas oublier les “:” à la fin de la ligne.
  • En programmation, on a pour habitude de commencer à compter à partir de 0.
  • On ajoute donc +1 pour la table de multiplication.

[alert variation= »alert-danger »]Attention aux boucles infinies ![/alert]

[section label= »La boucle For » anchor= »for »]

La boucle “for »

L’instruction “for” travaille sur des séquences. Elle est spécialisées dans le parcours d’une séquence de plusieurs éléments.

1
2
for element in sequence:
    # bloc d'instructions

La séquence à parcourir peut être, par exemple, une chaîne de caractère ou encore une liste.

1
2
3
chaine = "Bonjour les amis !" # Initialisation de la sequence à parcourir, ici une chaine de caracteres
for lettre in chaine: # Parcours de la sequence et instanciation automatique de la variable "lettre"
    print lettre # Affichage de la valeur de l'instance courante de "lettre"

  • La ligne 2 signifie: “Pour chaque élément (ici lettre) de la séquence (ici chaîne)”.
  • La variable “lettre” prend successivement la valeur de chaque élément de la séquence (“B”, “o”, “n”,…).
  • Il est inutile d’incrémenter la variable lettre, Python s’en charge.
  • Les lettres sont affichées sur une même colonne car “print” revient à la ligne après chaque message.

Le mot clé “in” peut être utilisé ailleurs que dans une boucle “for”.

1
2
3
4
5
6
chaine = "Bonjour les amis"
for lettre in chaine:
    if lettre in "AEIOUYaeiouy": # Test si l'instance courante de "lettre" est une voyelle
        print lettre
    else:
        print "*"

On recherche si un élément quelconque est contenu dans un ensemble de donné, ici “AEIOUYaeiouy”.

La fonction “range()” permet d’obtenir une liste de nombre.

1
2
for i in range(5):
    print i

1
2
for i in range(5, 11):
    print i

[section label= »Les mots clés Break et Continue » anchor= »break-continue »]

Les mots clés “break” et “continue”

break

  • Permet d’interrompre une boucle.
  • Arrête une boucle quelle que soit la condition de celle-ci.
  • Utile et fait gagner du temps.
  • Mais préférez une boucle avec une condition claire.

continue

  • Permet de continuer une boucle.
  • Fait repartir directement à la ligne du while ou for.

[section label= »En résumé » anchor= »resume »]

En résumé

  • Une boucle sert à répéter une portion de code en fonction d’un prédicat.
  • On peut créer une boucle grâce au mot-clé “while” suivi d’un prédicat.
  • On peut parcourir une séquence grâce à la syntaxe “for element in sequence:”.

Cours basé sur les travaux de Vincent Le Goff.

Partager sur:

Photographe professionnel, originaire d'Alsace (France), ancien Directeur Technique sur les films d'animation "Minions", "Moi, Moche et Méchant" et "Le Lorax".

Laisser un commentaire