💻Python : variables, conditions, boucles

Cours de mathématiques · Seconde

Variables et types (int, float, str, bool), affectation, opérateurs, tests if/elif/else et boucles for/while pour faire calculer la machine.

Ce que tu vas savoir faire

  • Manipuler des variables et reconnaître les types int, float, str et bool.
  • Utiliser les opérateurs arithmétiques et de comparaison.
  • Écrire une instruction conditionnelle if / elif / else.
  • Écrire une boucle for et une boucle while.
  • Prévoir ce qu'affiche ou renvoie un programme simple.

Variables, affectation et types

Règle

Une variable est un nom qui désigne une valeur stockée en mémoire. On l'affecte avec le signe = :

age = 15        # un entier (int)
taille = 1.72   # un nombre à virgule (float)
nom = "Léa"     # une chaîne de caractères (str)
majeur = False  # un booléen (bool) : True ou False

En Python le point décimal s'écrit avec un point (1.72), jamais avec une virgule. La fonction type(x) donne le type de x.

Méthode

Pour lire une affectation :

  1. On calcule d'abord la valeur à droite du =.
  2. On la range dans la variable nommée à gauche.
  3. a = a + 1 n'est pas une équation : on prend l'ancienne valeur de a, on lui ajoute 1, et on remet le résultat dans a.
Exemple
x = 5
x = x + 3
print(x)   # affiche 8

Après x = 5, la variable vaut 55. La ligne x = x + 3 calcule 5+3=85+3 = 8 et range 88 dans x.

Astuce

Ne confonds pas = (affecter) et == (tester l'égalité). x = 3 range 33 dans x ; x == 3 répond True ou False.

Opérateurs arithmétiques

Règle

Les opérateurs de calcul :

OpérateurRôleExempleRésultat
+ - *addition, soustraction, produit2 * 36
/division (donne un float)7 / 23.5
//quotient entier (division euclidienne)7 // 23
%reste de la division entière (modulo)7 % 21
**puissance2 ** 38

⭐ Pour les curieux — pourquoi ça marche ? Pourquoi n % 10 donne-t-il le dernier chiffre d'un entier ? Parce qu'écrire un nombre en base 1010, c'est exactement le découper en paquets de dix. Par exemple 2473=247×10+32473 = 247 \times 10 + 3 : on a fait 247247 paquets de dix (ce qui donne 24702470), et il reste 33, qui est précisément le chiffre des unités. Or le reste de la division par 1010, c'est justement « ce qui dépasse après avoir formé tous les paquets de dix possibles » : voilà pourquoi n%10n \,\%\, 10 isole le dernier chiffre, tandis que n/ ⁣/10n \,/\!/\, 10 ne garde que le nombre de paquets, 247247, c'est-à-dire le nombre privé de son dernier chiffre. Même idée pour le test « pair » : un nombre pair se range parfaitement en paires (paquets de 22) sans rien qui dépasse, donc son reste par 22 vaut 00.

Méthode

Pour savoir si un entier n est pair, on regarde le reste de sa division par 22 : n % 2 == 0 signifie « n est pair ». Le % est aussi utile pour récupérer le dernier chiffre d'un nombre : n % 10.

Exemple
print(17 // 5)   # 3  (17 = 5*3 + 2)
print(17 % 5)    # 2  (le reste)
print(2 ** 10)   # 1024
Astuce

Attention : / renvoie toujours un float. 10 / 2 vaut 5.0 (et non 5). Pour un quotient entier, utilise //.

Comparaisons et booléens

Règle

Une comparaison renvoie un booléen True ou False :

OpérateurSens
==égal à
!=différent de
< >strictement inférieur / supérieur
<= >=inférieur ou égal / supérieur ou égal

On combine plusieurs tests avec and (et), or (ou) et not (non).

Méthode

Pour traduire « x est compris entre 0 et 10 » on écrit 0 <= x and x <= 10, ou plus court en Python : 0 <= x <= 10.

Exemple
print(3 == 3)        # True
print(5 != 5)        # False
print(2 < 4 and 4 < 1)  # False (le 2e test est faux)
Astuce

== compare, = affecte. Une erreur très fréquente !

Les instructions conditionnelles (if / elif / else)

Règle

Une condition permet d'exécuter un bloc seulement si un test est vrai :

note = 12
if note >= 10:
    print("Reçu")
else:
    print("Recalé")

On peut tester plusieurs cas à la suite avec elif (sinon si).

Méthode
  1. Le bloc d'un if est indenté (décalé de 4 espaces).
  2. Python lit les tests dans l'ordre et s'arrête au premier vrai.
  3. Le else (facultatif) attrape tous les cas restants.
Exemple
x = 0
if x > 0:
    print("positif")
elif x < 0:
    print("négatif")
else:
    print("nul")
# affiche : nul
Astuce

N'oublie jamais les deux-points : en fin de ligne if, et indente le bloc en dessous, sinon Python refuse le programme.

La boucle for

Règle

La boucle for répète un bloc pour chaque valeur d'une séquence. Avec range, on parcourt des entiers :

for i in range(4):
    print(i)
# affiche 0, puis 1, puis 2, puis 3

range(n) va de 0 à n-1 (donc n valeurs). range(a, b) va de a à b-1.

⭐ Pour les curieux — pourquoi ça marche ? Pourquoi range(n) contient-il exactement nn valeurs alors qu'il s'arrête à n1n-1 ? Parce qu'on compte à partir de 00 et non de 11. Aligne les nombres 0,1,2,,n10, 1, 2, \dots, n-1 : devant chaque entier kk, il y a exactement kk entiers (0,1,,k10, 1, \dots, k-1). Donc le tout dernier, n1n-1, est précédé de n1n-1 camarades : cela fait bien n1n-1 valeurs avant lui, puis lui-même, soit nn valeurs en tout. Le piège du « 1-1 » disparaît dès qu'on retient que démarrer à 00 décale toute la liste d'un cran vers le bas, sans en changer la longueur.

Méthode

Pour répéter quelque chose n fois, on écrit for i in range(n):. La variable i prend successivement 0,1,2,,n10, 1, 2, \dots, n-1.

Exemple
somme = 0
for i in range(1, 5):   # i = 1, 2, 3, 4
    somme = somme + i
print(somme)            # 10  (1+2+3+4)
Astuce

range(4) ne contient pas le 4 : ce sont 0,1,2,30, 1, 2, 3. La borne de droite est toujours exclue.

La boucle while

Règle

La boucle while répète un bloc **tant qu'**une condition reste vraie :

n = 1
while n <= 3:
    print(n)
    n = n + 1
# affiche 1, 2, 3

On l'utilise quand on ne sait pas à l'avance combien de tours il faudra (contrairement au for).

Méthode

Dans un while, il faut faire évoluer la condition à l'intérieur de la boucle (ici n = n + 1), sinon elle ne s'arrête jamais : c'est une boucle infinie.

Exemple
n = 20
compte = 0
while n > 1:
    n = n // 2
    compte = compte + 1
print(compte)   # 4 : 20→10→5→2→1 (4 divisions)
Astuce

Oublier de modifier la variable testée crée une boucle infinie. Vérifie toujours que la condition finira par devenir fausse.

Tu as lu le cours ? Passe à la pratique.

Un coach IA te guide sans jamais donner la réponse, avec des exercices et des quiz sur ce chapitre. Version d'essai gratuite, sans limite de durée.

S'entraîner avec le coach IA — gratuit