Comment l’underscore, ce petit symbole « _ », peut-il nous aider en Python ? C’est ce que nous allons voir dans cet article. Il permet de rester sobre au lieu d’aller chercher tous les noms les plus insipides les uns que les autres donnés par les professeurs dans les énoncés. Quoi de mieux en effet d’en mettre plein la vue à son professeur en lui faisant un pied de nez mathématique ?
L’underscore dans les boucles
En plus de sa visée humoristique, cet article vise à te donner les outils les plus simples pour t’améliorer. En effet, nous connaissons tous la sempiternelle commande :
Cependant, si « i » n’a pas d’utilité particulière, ce processus est quelque peu barbare par le fait qu’il oblige le lecteur du programme à chercher le « i », même si l’on ne l’utilise pas…. C’est là que l’underscore devient utile !
Regardons ici comment faire :
Cela signifie au lecteur que la boucle est là uniquement pour répéter un processus annexe n fois, et non pour utiliser la valeur que prend le n. Ce qui éclaircit la lecture du programme d’autant plus.
Mais si jamais on s’est trompé et que l’on doit utiliser cette valeur plus loin ? Pas de panique ! Il suffit de mettre l’underscore à la place de la variable :
Les listes
Il faut noter que ce symbole peut être utilisé dans une liste en compréhension :
Les limites d’un underscore dans les boucles
De façon plus provocante, on peut simplement remplacer tous les noms de variable par _ :
Cependant, cela est peu utilisé du fait du manque de lisibilité.
L’underscore dans les fonctions
On l’aura deviné, l’underscore dans les fonctions pose les mêmes problèmes et offre les mêmes avantages.
Les fonctions lambda
Mettons que l’on a cette fonction :
Comment l’utiliser puisqu’elle n’a pas de nom ?
Les fonctions classiques
Pour les fonctions classiques, on peut recourir à un « _ » :
Dans la même optique, cela se révélera compliqué d’utiliser plusieurs de ces symboles pour nommer des fonctions pour cause de lisibilité…
Conclusion
En fin de compte, il faut se souvenir que ce symbole n’est là que pour dépanner ceux qui utilisent Python. Il n’a pas vocation à remplacer toute variable ou tout nom de fonction, mais il peut servir à clarifier un script ou simplement être un nom de variable auxiliaire à utiliser.