Les boucles c'est du code qui va se répéter plusieurs fois avant un évènement qui va les stopper.
Il existe deux type de boucle.
Ce sont des boucles qui vont se répéter puis s'arrêter dès que celle-ci auront atteint une limite imposée par le développeur.
On utilise généralement les mots clé for
et in
pour créer des boucles bornées.
Exemple de générateur de nombre
for nombre in range(5)
print(nombre)
>>> 0
>>> 1
>>> 2
>>> 3
>>> 4
La fonction range()
va lister tout les nombres jusqu'à une valeur donnée.
Liste contenant des nombres entier
liste = [1, 2, 3, 4, 5]
for nombre in liste:
print('nombre: ', nombre)
>>> nombre: 1
>>> nombre: 2
>>> nombre: 3
>>> nombre: 4
>>> nombre: 5
Liste contenant du texte
liste = ['Salut', 'comment', 'ça', 'va', '?']
for mot in range(len(liste)):
print('le mot a pour valeur ', mot, ' et représente ', liste[mot])
>>> le mot a pour valeur 0 et représente Salut
>>> le mot a pour valeur 1 et représente comment
>>> le mot a pour valeur 2 et représente ça
>>> le mot a pour valeur 3 et représente va
>>> le mot a pour valeur 4 et représente ?
Ce sont des boucles qui vont se répéter indéfiniment.
On utilise généralement le mot clé while
pour créer des boucles non bornées.
Le seul moyen pour sortir une boucle while
est d'utiliser l'instruction break
.
Un compteur avec un maximum à 1000.
nombre = 0
while nombre < 1000:
nombre += 1
print(nombre)
>>> 1
>>> 2
>>> 3
>>> ...
>>> 997
>>> 998
>>> 999
>>> 1000
Un compteur sans maximum.
nombre = 0
while True:
nombre += 1
print(nombre)
Seule les boucles for
sont compatibles avec la comprehension.
Il faut d'abord désigner une variable puis mettre la syntaxe.
Sans compréhension:
fruits = ['Pomme', 'Banane', 'Kiwi', 'Pastèque', 'Mangue']
fruit_avec_un_e = []
for fruit in fruits:
if 'e' in fruit:
fruit_avec_un_e.append(fruit)
print('Ces fruits contiennent la lettre "e" ', fruit_avec_un_e)
>>> Ces fruits contiennent la lettre "e", ['Pomme', 'Banane', 'Pastèque', 'Mangue']
Note: les lettres è
et é
comptent pour un e
Avec compréhension:
fruits = ['Pomme', 'Banane', 'Kiwi', 'Pastèque', 'Mangue']
fruit_avec_un_e = [fruit for fruit in fruits if 'e' in fruit]
print('Ces fruits contiennent la lettre "e" ', fruit_avec_un_e)
>>> Ces fruits contiennent la lettre "e", ['Pomme', 'Banane', 'Pastèque', 'Mangue']
Rendez vous à l'exercice n°8
Made with ❤️ by HPGF