- Formations
- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- Articles
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- Communauté
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
- Formations
- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- Articles
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- Communauté
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
Inscris-toi
(c'est gratuit !)
Un compte est nécessaire pour participer aux discussions.
Créer un compte person00:00:00 :Dans cette partie, on va voir quelques astuces pour éviter d'avoir trop de niveaux de tabulation.Les tabulations, c'est vraiment pratique en Python, ça évite d'avoir des accolades en plus,comme on a par exemple en C ou à d'autres langages de programmation,qui font que le code devient un peu plus lourd, un peu plus dur à lire.
00:00:17 :En Python, le fait de pouvoir utiliser des tabulations pour indiquer les blocs de code,c'est vraiment pratique, mais des fois on va se retrouver, comme dans l'exemple ici,avec plusieurs niveaux de tabulation qui peuvent devenir assez embêtants à gérer.
00:00:29 :Dans cet exemple-ci, c'est vraiment le contre-exemple de ce qu'il faut faire.Vous voyez qu'on a trois if qui se suivent ici et qui font qu'on a plusieurs niveaux de tabulation qui s'enchaînentet qui rendent le code assez peu lisible et assez dur à maintenir.
00:00:43 :Généralement, quand on a deux if qui se suivent comme ceci, on peut les regrouper en un seul.Là, si on regarde comment faire pour avoir un peu moins de niveaux de tabulation,avec une meilleure façon de faire ici, où on va regrouper les trois if ensemble,on va les regrouper avec des ends.
00:00:59 :On va reprendre les mêmes if que ce qu'on a ici.On va prendre donc if fichier starts with c./.Si le nom du fichier commence avec c./., s'il finit avec .py et que la longueur du fichier est plus grande que 3,
00:01:12 :on retourne vrai, ce qui va être exactement pareil que ce qu'on a ici,puisque si ça finit avec .py, on va continuer.Si c'est plus grand que 3 comme nom de fichier, on va également continuer au prochain if, etc.
00:01:25 :De les regrouper comme ça avec des ends, c'est la même chose,et ça tient sur une ligne à la place de 3, et on a un seul niveau de tabulation ici à l'intérieur du if,plutôt que de descendre ici en cascade dans trois niveaux de tabulation.
00:01:37 :Donc ça, c'est un premier exemple.On va voir un deuxième exemple ici, où on va vérifier si le fichier commence par c./.Et si c'est le cas, on va effectuer un certain nombre d'opérations.
00:01:49 :Donc là, vous voyez que ça fait en sorte que la plupart de notre code à l'intérieur de cette fonction iciva être indenté en dessous du if.
00:01:58 :Donc ce n'est pas forcément très pratique,puisqu'on va toujours être à deux niveaux de tabulation en dessous de la définition ici.C'est un peu plus sympa quand on peut travailler dans notre fonction directement au premier niveau de tabulation.
00:02:11 :Donc ce qu'on peut faire dans ce cas-ci, c'est inverser le if.Comme vous le voyez ici, c'est-à-dire qu'à la place de diresi le fichier commence avec, alors on fait les opérations qu'on veut faire,et bien on va inverser, donc on va dire si le fichier ne commence pas avec ce qu'on veut,
00:02:28 :donc l'inverse de la condition qu'on avait au-dessus, et bien là on va retourner none.Donc on va gérer le cas où on n'a pas ce qu'on veut, et dans ce cas-ci on retourne none.
00:02:37 :Et après, vu que le return va arrêter le fonctionnement de la fonction,on va sortir de la fonction avec le return, et bien ça fait en sorte que si cette condition n'est pas vraie,donc si le fichier commence bien par c://, cette condition ne sera pas vérifiée,et on va tout simplement continuer avec le reste de la fonction.
00:02:54 :Donc ça permet en fait que tout le reste de la fonction, tout le code de notre fonction,là il y a juste trois lignes donc c'est pas énorme,mais imaginez que vous aviez cinquante lignes à exécuter dans votre fonction,c'est plus pratique de l'avoir ici directement,en récupérant la condition qui fait que votre fichier ne va pas être correct,
00:03:12 :donc si le fichier n'est pas correct, on retourne.Là c'est la même chose, vous voyez, si le fichier commence, et bien on exécute,si le fichier ne commence pas, et bien on va directement au bloc none,sauf que là donc c'est l'inverse, c'est qu'on a juste une ligne ici qui est à un niveau d'indentation,
00:03:25 :et tout le reste de la fonction qui est en dessous du if,alors que là voilà, on a une ligne qui est à deux niveaux d'indentation,et tout le reste qui est au même niveau que la fonction.
00:03:34 :Donc d'inverser comme ça notre condition,plutôt que de vérifier si ça commence, on vérifie si ça ne commence pas,et dans ce cas-ci on retourne, et après exécuter la fonction,c'est une bonne façon aussi d'éviter d'avoir trop de niveaux de tabulation comme ça,à l'intérieur de vos fonctions.
00:03:48 :Donc voilà deux petits exemples comme ça qui permettent d'évitertrop de niveaux de tabulation à l'intérieur de votre code,donc moi c'est des trucs que j'utilise très souvent, celui-là notamment,l'inversion en fait de ma condition, je l'utilise constamment dans mes fonctionspour rester ici à un niveau de tabulation.
Ce n'est pas fini...
✋
Tu as complété % du parcours 🔥
Termine l'intégralité de la formation pour pouvoir débloquer ton attestation de réussite.