Le quartierPY PythonPièce 2/7Débutant

Conditions et boucles

Faire des choix avec if, elif et else, répéter des actions avec for et while, et comprendre pourquoi l'indentation compte en Python.

Ce que tu vas apprendre

  • Faire exécuter du code seulement si une condition est vraie.
  • Répéter des instructions avec for et while.
  • Délimiter les blocs de code avec l'indentation.

Comparer des valeurs

Une condition est une expression dont le résultat est True ou False. On la construit avec des opérateurs de comparaison.

OpérateurSens
==égal à
!=différent de
<, >plus petit, plus grand
<=, >=plus petit ou égal, plus grand ou égal
temps = 30
print(temps > 20)
print(temps == 45)

Résultat : True puis False. Attention : un seul = range une valeur, il en faut deux pour comparer.

if, elif, else

Le mot-clé if exécute un bloc seulement si la condition est vraie. elif ajoute un autre cas, else couvre tout le reste.

temps = 30

if temps <= 15:
    print("Recette express")
elif temps <= 45:
    print("Recette normale")
else:
    print("Recette longue")

Ici le programme affiche « Recette normale ». Python teste les conditions dans l'ordre et s'arrête à la première vraie.

L'indentation

L'indentation est le retrait des lignes en début de ligne. En Python, elle remplace les accolades : elle dit quelles lignes appartiennent au bloc.

Après un :, les lignes du bloc sont décalées de 4 espaces. Quand le retrait revient en arrière, le bloc se termine.

if temps <= 15:
    print("Rapide")
    print("Parfait en semaine")
print("Cette ligne s'affiche toujours")
Mélanger espaces et tabulations, ou oublier un retrait, provoque une IndentationError. Règle ton éditeur pour insérer 4 espaces à chaque appui sur Tab.

Combiner des conditions

Les mots and, or et not combinent plusieurs conditions.

vegetarien = True
temps = 20

if vegetarien and temps <= 30:
    print("Recette végétarienne rapide")

if not vegetarien:
    print("Contient de la viande")

and exige que les deux soient vraies, or qu'au moins une le soit, not inverse le résultat. Pour tester une appartenance, in est très lisible :

if "oeuf" in "gâteau aux oeufs":
    print("Contient des oeufs")

La boucle for

Une boucle répète un bloc de code. for parcourt une suite de valeurs, une à la fois.

for lettre in "riz":
    print(lettre)

Elle affiche r, i, puis z, chacune sur sa ligne. À chaque tour, lettre prend la valeur suivante. Pour répéter un nombre précis de fois, utilise range() :

for numero in range(1, 4):
    print(f"Étape {numero}")

Résultat : Étape 1, Étape 2, Étape 3. range(1, 4) démarre à 1 et s'arrête avant 4. Avec un seul nombre, range(3) donne 0, 1 et 2.

La boucle while

while répète tant qu'une condition reste vraie.

portions = 1
while portions < 8:
    print(f"{portions} portions")
    portions = portions * 2

Elle affiche 1, 2 puis 4 portions. À la fin du troisième tour, portions vaut 8 et la condition devient fausse.

Si la condition ne devient jamais fausse, la boucle tourne sans fin. Dans le terminal, arrête le programme avec Ctrl+C.

break et continue

Deux mots-clés modifient le déroulement d'une boucle :

  • break sort immédiatement de la boucle ;
  • continue saute le reste du tour et passe au suivant.
for note in [4, 0, 5, 3]:
    if note == 0:
        continue
    if note == 5:
        print("Recette parfaite trouvée")
        break
    print(f"Note {note}")

Le programme affiche « Note 4 », ignore le 0, puis annonce la note 5 et s'arrête avant le 3.

À retenir

  • Une condition vaut True ou False ; == compare, = range une valeur.
  • if, elif et else choisissent un bloc ; seul le premier cas vrai s'exécute.
  • L'indentation de 4 espaces définit les blocs, après un :.
  • and, or, not et in combinent ou testent des conditions.
  • for parcourt une suite, range() fabrique une suite de nombres.
  • while répète tant que sa condition est vraie ; break et continue en modifient le cours.

Pour aller plus loin

Sources officielles

Ensuite

Projet
Lignes de code
Niveau
Le quartier
Appartement
Python
Pièce
2/7
Plan n°
python/02.conditions-et-boucles
Lignes de code · fiches rédigées à partir des documentations officielles, sources citées en bas de chaque page.