Aller au contenu

Expression ou instruction ?

Différence entre « expression » et «instruction »

La différence entre une expression et une instruction en programmation réside dans leur rôle et leur comportement au sein d'un programme :

Expression⚓︎

Définition : Une expression est une combinaison de valeurs, de variables et d'opérateurs qui produit un résultat (une valeur) lorsqu'elle est évaluée.

Exemples :

  • 3 + 5 (expression arithmétique qui produit la valeur 8)
  • x * y (expression qui donne le produit des variables x et y)
  • "Bonjour " + nom (expression de concaténation de chaînes)

Utilité : Les expressions sont généralement utilisées pour calculer des valeurs. Elles sont souvent utilisées dans des affectations ou des conditions.

Instruction⚓︎

Définition : Une instruction est un ordre donné au programme pour exécuter une action. Contrairement à une expression, une instruction ne retourne pas nécessairement une valeur.

Exemples :

  • x = 5 (instruction d'affectation qui assigne la valeur 5 à la variable x)
  • if x > 3: (instruction conditionnelle)
  • print("Bonjour") (instruction qui affiche une chaîne de caractères)

Utilité : Les instructions sont utilisées pour contrôler le flux du programme (comme les boucles, les conditions, les affectations, les appels de fonction, etc.).

Différence clé⚓︎

  • Une expression retourne toujours une valeur.
  • Une instruction exécute une action mais ne retourne pas nécessairement de valeur (ou retourne une valeur implicite comme None en Python).

Exemple en Python :

🐍 Editeur
# Expression :
3 + 4            # C'est une expression qui produit la valeur 7

# Instruction :
x = 3 + 4        # C'est une instruction d'affectation qui assigne la valeur 7 à x

# Expression dans une instruction :
if x > 5:      # Ici, (x > 5) est une expression qui produit True ou False, 
    print(x)     # et "if" est l'instruction qui contrôle le flux du programme

Ainsi, les expressions sont souvent intégrées dans les instructions, et les instructions dictent le comportement du programme.

La commande print(x) est une instruction et non une expression.

Explication :

  • Instruction : Comme mentionné précédemment, une instruction est un ordre donné au programme pour effectuer une action. Dans le cas de print(x), il s'agit d'une instruction qui demande au programme d'afficher la valeur de x. L'action ici est l'affichage, et cette commande ne retourne pas de valeur significative (elle retourne en fait None en Python, mais cela n'est pas utilisé la plupart du temps).

Exemple :

🐍 Editeur
x = 5
print(x)  # Affiche la valeur de x (ici, 5), mais ne retourne pas de valeur exploitable

Pourquoi ce n'est pas une expression ?

  • Expression : Une expression, contrairement à une instruction, retourne une valeur. Cependant, print(x) ne produit pas directement une valeur utilisable par d'autres parties du programme ; elle effectue seulement une action (afficher quelque chose à l'écran).

On peut constater cette différence en essayant d'utiliser print(x) dans une affectation. Par exemple :

🐍 Editeur
y = print(x)  # y contiendra la valeur None, car print() ne retourne rien de significatif

Donc, print(x) est une instruction, car elle effectue une action d'affichage et non un calcul de valeur.