- 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
Deviens membre Premium magic_button
Débloque cette session en devenant Membre Premium 🚀
Inscris-toi
(c'est gratuit !)
Un compte est nécessaire pour participer aux discussions.
Créer un compte person00:00:00 :Pour l'instant quand on ouvre un terminal pour exécuter notre script, donc si dans mon terminalje fais python 3.8 et dans ce cas-ci main02.py, on n'a aucune option. On fait juste afficher
00:00:12 :recherche des fichiers ici avec l'extension qui est la phrase qu'on affichait avec typer.echo.Si on souhaite rajouter ce qu'on appelle des arguments, on va les mettre en paramètres denotre fonction ici. Donc par exemple je vais rajouter une extension et on va pouvoir spécifier
00:00:26 :le type de cet argument avec le type hinting. Donc je vais mettre deux points str ici pourindiquer que l'extension ici doit être de type chaîne de caractère. On va pouvoir ensuite par
00:00:36 :exemple ici avec un fstring afficher dans notre phrase l'extension que l'on souhaite utiliser,donc que l'on va passer à notre script. Donc si je reviens ici, je vais juste sauvegarder
00:00:47 :avant mon fichier, je reviens et cette fois-ci si j'exécute mon script sans rien donner après,on voit qu'on a une erreur. On a un argument qui est missing, donc qui est manquant et cet
00:00:57 :argument c'est l'argument extension. Donc si on veut voir l'aide, on peut refaire "--help",et là vous allez voir dans l'aide qu'on a un argument qui est requis, donc l'argument extension.
00:01:05 :On voit ici required, ce qui veut dire que cet argument est obligatoire et donc pour pouvoirutiliser cet argument, on va tout simplement le spécifier à la suite. Donc ici par exemple on
00:01:15 :pourrait dire txt, donc on souhaite chercher les fichiers avec l'extension txt. On n'est pas obligéde mettre les guillemets, donc des guillemets comme ceci, pour indiquer que c'est une chaînede caractère directement dans le terminal. Si on met le texte comme ceci, il sera considéré comme
00:01:28 :une chaîne de caractère, puisqu'on a renseigné ici que ce paramètre, l'extension, était de typestr, donc de type chaîne de caractère. Donc si je valide cette fois-ci en appuyant sur entrée,
00:01:38 :on voit qu'on a bien l'affichage qui est modifié, donc recherche des fichiers avec l'extension etlà on a bien l'extension txt qui est affichée, puisqu'on l'a récupéré dans notre fonction.
00:01:47 :Si je mets à la place de txt py, eh bien on va rechercher les fichiers avec l'extension py.On peut également spécifier une option par défaut à cet argument en mettant un égal et par exempleici je pourrais mettre par défaut la chaîne de caractère txt. Vous allez voir que si je fais ça,
00:02:03 :cet argument va devenir ce qu'on appelle une option. Donc si je relance mon script et quecette fois-ci je ne donne rien, ça ne posera pas de problème, on n'aura pas l'erreur qu'on avaitprécédemment puisque là on a mis une valeur par défaut. Donc si je relance ça comme ça,
00:02:15 :vous voyez que par défaut on va rechercher avec l'extension txt. Donc c'est cette extension quiva être utilisée par défaut si on ne donne rien à notre script. Si par contre cette fois-ci j'affiche
00:02:25 :led, vous allez voir qu'on n'a plus l'argument qui est affiché. Donc avant on avait argument et onvoyait extension qui était requis, on n'a plus cet argument ici et par contre on a maintenant unenouvelle option. Donc cette option qui est précédée par les deux tirés, donc tiretiret extension,
00:02:39 :et on a le texte ici et on voit défaut txt. Donc texte ici ça veut dire qu'en fait c'estune option de type texte, donc de type chaîne de caractère, et la valeur par défaut c'est txt.
00:02:50 :Donc c'est pour ça qu'on peut en fait appeler notre script sans ne rien donner, donc justel'appeler comme ceci et par défaut ça veut utiliser txt. Maintenant quand on met une valeur par défaut
00:02:59 :avec un paramètre, donc avec extension, ça devient une option. Donc pour utiliser cette option il vafalloir mettre deux tirets comme ceci et spécifier par la suite par exemple py. Donc là on dit qu'on
00:03:10 :veut utiliser une extension et une extension différente donc de txt puisqu'on veut utiliserpy. Donc si je fais ça vous voyez que cette fois-ci on a bien la recherche des fichiers avec
00:03:19 :l'extension py. Donc là vous allez me dire ok mais avant on avait un argument maintenant on aune option, comment est ce qu'on peut faire pour revenir avec un argument mais avec une valeurpar défaut ? Alors si vous voulez faire ça il va falloir faire un truc un petit peu différent,
00:03:30 :il va falloir utiliser typer.argument. Donc ici à la place de la chaîne de caractère txt on vamettre typer.argument donc comme ceci qui est une classe et si vous souhaitez en faire un argument
00:03:42 :requis il faut mettre trois points comme ceci donc trois points à la suite ce qui va avoir pour effetde revenir à un argument requis. Donc ça ça nous permet pour l'instant de revenir à ce qu'on avait
00:03:53 :par défaut c'est à dire que si je ne mets rien ici si j'enlève tout ça et bien on revient avecun argument qui est requis et qui n'a aucune valeur par défaut. Et si je mets ça donc si je
00:04:01 :remets mon typer.argument avec les trois points comme ça et bien là on a exactement la mêmechose. Alors vous pourriez me dire ça ne sert pas à grand chose effectivement si je reviens ici
00:04:09 :dans mon terminal que j'essaye d'exécuter mon script vous voyez qu'on retrouve notre erreurmissing argument extension. Donc là il faut le spécifier en mettant par exemple ici txt pour
00:04:19 :spécifier une extension. Alors à quoi ça peut servir de mettre ça ? Déjà une des utilités c'estqu'on va pouvoir spécifier un texte dead avec le paramètre help donc on pourrait dire ici parexemple extension à chercher et si je fais ça je sauvegarde le script et que cette fois-ci j'aurai
00:04:34 :fait "- "- help et que je remonte un petit peu là vous allez voir que cette fois-ci on a laphrase dead qui est affichée donc on a l'argument extension extension à chercher et il est requis.
00:04:45 :Maintenant comment est ce qu'on peut faire pour remettre une valeur par défaut puisque là avecles trois points on a un argument qui est requis mais qui n'a aucune valeur par défaut et bien ceque vous pouvez faire c'est mettre une valeur par défaut ici à la place des points de suspension
00:04:59 :donc on pourrait mettre par exemple txt si je sauvegarde et que je reviens dans mon terminalcette fois-ci si j'appelle mon script sans ne rien donner par défaut il va utiliser txt et sivous souhaitez ne pas avoir un argument requis et ne pas donner de valeur par défaut et bien
00:05:14 :vous pouvez mettre tout simplement none. Donc dans ce cas-ci si je sauvegarde et que je relance lescript là vous voyez qu'on a recherche des fichiers avec l'extension none donc l'argument n'est plusrequis je peux appeler mon script ici sans ne rien passer après le script donc l'argument n'est plus
00:05:29 :requis et par défaut il va utiliser none puisque c'est ce qu'on a mis ici donc ça nous permettraità l'intérieur de la fonction par exemple de dire if not extension on pourrait utiliser une valeurpar défaut qui soit différente de celle qu'on a mis ici puisque là par exemple on pourrait mettre
00:05:43 :une chaîne de caractère mais si on a envie de mettre quelque chose d'un peu plus complexe etde faire des calculs et bien on peut mettre none ici comme ça il ne sera pas requis mais il n'y aurapas de valeur par défaut et ensuite à l'intérieur de notre fonction on va pouvoir faire cette
00:05:55 :structure conditionnelle pour ensuite définir une valeur par défaut donc par exemple dire quel'extension serait égale à quelque chose ou quelque chose d'autre en fonction des cas donclà ça nous permet de faire un peu plus de lignes de code que ce qu'on pourrait faire ici directementdans la définition de notre fonction. Donc ça fait beaucoup de choses il y a pas mal de petites
00:06:12 :subtilités ici vous pouvez juste laisser donc enlever tout ça ici pour avoir un argument quiest requis avec aucune valeur par défaut sinon vous pouvez mettre donc l'argument ici avec lespoints de suspension et ça vous permet de spécifier un texte d'aide donc moi c'est quelquechose que je fais très souvent comme ça de mettre un typer.argument avec les points de
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.