L'indentation
À présent tu es en mesure de comprendre entièrement le code de l'éditeur. Il définit une
fonction nommée somme
qui utilise un print
pour afficher un message personnalisé.
Observe que ce message est construit en utilisant une f-string.
À tout moment si tu as un doute sur une notion, n'hésite pas à poser une question dans le chat . Tu peux également retourner dans le menu principal pour trouver la leçon correspondante et réviser rapidement. Par exemple nous avons vu les f-strings au chapitre 1. Reconnais-tu la syntaxe ?
L'objectif de cette leçon est de comprendre le rôle de l'indentation.
- 1
Commence par exécuter le code de l'éditeur puis appelle la fonction
somme
dans la console pour t'assurer qu'elle fonctionne bien comme attendu. Par exemplesomme(3,4)
permet d'appeler la fonction avec en argumentsa = 3
etb = 4
. Essaie de deviner le résultat qui va s'afficher à l'avance.Solution
Une fois qu'on a exécuté le code de l'éditeur on appelle la fonction dans la console en lui donnant les arguments
a = 3
etb = 4
.>>> somme(3,4) La somme de 3 et 4 vaut 7
- 2
Si dans l'éditeur j'ajoute une ligne contenant par exemple
print("coucou")
comment Python va-t-il déterminer si cette ligne fait partie de la fonction ou pas ?C'est l'alignement qui le détermine : le code est-il décalé vers la droite de plusieurs espaces ? Si c'est le cas on dit qu'il est indenté.
def somme(a,b): return a+b #Non indenté print("coucou")
def somme(a,b): return a+b #Indenté print("coucou")
Ajoute à la ligne 3 de l'éditeur quatre espaces pour indenter le code suivies deprint("coucou")
. Puis exécute le nouveau code.Solution
La question demander d'indenter
print("coucou")
à la ligne 3 :def somme(a,b): return a+b print("coucou")
- 3
À présent que tu as indenté le code
print("coucou")
, appelle de nouveau la fonctionsomme
dans la console avec des arguments de ton choix. Par exemplea = 5
etb = 7
. Essaie de deviner le résultat à l'avance.Solution
Dans la console on appelle par exemple la fonction
somme
avec les argumentsa = 5
etb = 7
:>>> somme(5,7) La somme de 5 et 7 vaut 12 coucou
- 4
À présent pour voir la différence enlève l'indentation (les espaces) devant le
print("coucou")
puis exécute de nouveau le code.Solution
L'indentation c'est l'espace en début de ligne donc enlever l'indentation revient à coller le
print("coucou")
au-début de la ligne 3.def somme(a,b): return a+b print("coucou")
- 5
On va vérifier que le
print("coucou")
ne fait effectivement plus parti de la fonctionsomme
. Pour cela appelle la fonctionsomme
une dernière fois dans la console comme précédemment, en utilisant des valeurs de ton choix poura
etb
. Le message"coucou"
ne s'affichera pas.Solution
Dans la console on appelle par exemple la fonction
somme
avec les argumentsa = 5
etb = 7
comme précédemment. Le message "coucou" n'apparaît pas :>>> somme(5,7) La somme de 5 et 7 vaut 12
En conclusion l'indentation nous permet de distinguer les lignes faisant partie d'une fonction. De plus, changer l'indentation impacte l'exécution du code. Visuellement les lignes indentées sont toutes alignées verticalement et décalées d'une tabulation (ou quatres espaces).