Dans notre vie mathématique, il faut se souvenir impérativement des subtilités de l’informatique, un outil redoutable pour passer, sous réserve d’une certaine maîtrise, devant les autres candidats. Une question de cours toute bête peut faire la différence entre deux plages de notes (16 et 12), ou peut te faire gagner un point supplémentaire au plus haut niveau. En Python, « elif » simplifie les déclarations conditionnelles et permet une gestion concise des conditions.
Quid de « if » ?
Pour aborder « if », « elif » et « else », il faut se souvenir tout d’abord de ce qu’est « if » :
- « if » est un test logique en Python
- « if » comprend une condition
- « if » compare la valeur booléenne (True ou False) de la condition proposée avec True : l’écriture complète d’un « if » est celle qui suit :
En voici un exemple plus concret :
On voit donc que Python teste une égalité du type bool == bool : si l’on substitue (x == 3) dans l’expression susmentionnée, on a :
Le résultat apparaît donc naturel.
Quid de « else » ?
Dans mes cours de mathématiques et de Python, je donne souvent l’image d’un système complet d’événement ou d’une tarte par exemple. Il faut penser que le « if » et le « else » partitionnent l’univers en deux, ils coupent la tarte en deux.
L’informatique est comme les mathématiques, en ceci qu’elle est binaire : soit le « if » passe, soit le « else » passe !
Pour rappel, voici la syntaxe :
Cependant, il faut lire ceci comme :
Et « elif » ?
C’est ici que le cœur de l’article intervient : quid de « elif » ? « elif » est le lointain cousin de « if ». Encore une fois, il faut reprendre l’image d’un système complet d’événement, mais que composent cette fois-ci « if », « else », « elif ».
Voici la syntaxe :
En effet, « elif » remplit un rôle logique et pratique. Étant une part de ce système complet d’événement, si la première condition, représentée par « if », est remplie, comme avec un « else », « elif » n’est pas testé puisque comme dans un système complet d’événement, deux conditions ne peuvent pas être vraies en même temps.
En conséquence, l’ordinateur ne se fatigue pas à calculer les conditions du « elif », ce qui peut grandement améliorer la vitesse d’un programme. Les curieux pourront s’amuser à tenter des expériences avec le module « time », que tu peux installer le plus généralement avec la commande :
Exemple
Si l’on utilise des conditions qui se chevauchent avec un « elif », à l’inverse, le programme ne fonctionnera pas proprement.
La première condition du « if » est satisfaite et ainsi, le « elif » est ignoré.
Conclusion
Connaître quelques subtilités de langage n’est pas facultatif, surtout pour ceux qui visent des écoles du top 3 et qui doivent passer un oral de mathématiques. De plus, les jurys s’habituant à peine au Python, toute hésitation les mettra de mauvaise humeur, les forçant à aller vérifier dans leurs fiches et leurs livres si ce que tu dis est vrai.
Une question impromptue sur le cours peut tout à fait tomber sur des subtilités comme celles-ci, étant donné qu’elles sont au programme, et peuvent coûter cher…
Lire aussi : Les subtilités révélatrices du langage Python