trouve en effet au même niveau d’indentation que l’instruction : if ordre == "carnivores" : (ligne 3). Les deux font donc partie d’un même bloc, lequel est entièrement exécuté si les conditions testées aux lignes 1 et 2 sont vraies.
Pour que la phrase « c’est peut-être un canari » soit affichée, il faut que la variable embranchement contienne « vertébrés », et que la variable classe contienne « oiseaux ».
Quant à la phrase de la ligne 9, elle est affichée dans tous les cas, parce qu’elle fait partie du même bloc d’instructions que la ligne 1.
Tout ce qui précède nous amène à faire le point sur quelques règles de syntaxe :
Dans de nombreux langages de programmation, il faut terminer chaque ligne d’instructions par un caractère spécial (souvent le point-virgule). Sous Python, c’’est le caractère de fin de ligne[1] qui joue ce rôle. (Nous verrons plus loin comment outrepasser cette règle pour étendre une instruction complexe sur plusieurs lignes.) On peut également terminer une ligne d’instructions par un commentaire. Un commentaire Python commence toujours par le caractère spécial #. Tout ce qui est inclus entre ce caractère et le saut à la ligne suivant est complètement ignoré par le compilateur.
Dans la plupart des autres langages, un bloc d’instructions doit être délimité par des symboles spécifiques (parfois même par des instructions, telles que begin et end). En C++ et en Java, par exemple, un bloc d’instructions doit être délimité par des accolades. Cela permet d’écrire les blocs d’instructions les uns à la suite des autres, sans se préoccuper ni d’indentation ni de sauts à la ligne, mais cela peut conduire à l’écriture de programmes confus, difficiles à relire pour les pauvres humains que nous sommes. On conseille donc à tous les programmeurs qui utilisent ces langages de se servir aussi des sauts à la ligne et de l’indentation pour bien délimiter visuellement les blocs.
Avec Python, vous devez utiliser les sauts à la ligne et l’indentation, mais en contrepartie vous n’avez pas à vous préoccuper d’autres symboles délimiteurs de blocs. En définitive, Python vous force donc à écrire du code lisible, et à prendre de bonnes habitudes que vous conserverez lorsque vous utiliserez d’autres langages.
Nous aurons de nombreuses occasions d’approfondir le concept de « bloc d’instructions » et de faire des exercices à ce sujet dès le chapitre suivant.
Le schéma ci-contre en résume le principe.
- ↑ Ce caractère n’apparaît ni à l’écran, ni sur les listings imprimés. Il est cependant bien présent, à un point tel qu’il fait même problème dans certains cas, parce qu’il n’est pas encodé de la même manière par tous les systèmes d’exploitation. Nous en reparlerons plus loin, à l’occasion de notre étude des fichiers texte (page 119).