La fonction partial
Inscris-toi
(c'est gratuit !)
Un compte est nécessaire pour participer aux discussions.
Créer un compte00:00:00 :Dans cette vidéo, je vais vous présenter une fonction qui est très pratique pour créer des fonctions assez spécifiques à partir d'une fonction existante.Cette fonction s'appelle Partial, qui est disponible à l'intérieur du module FuncTools.
00:00:14 :Func, ici, ce n'est pas la musique, c'est bien FunctionTools.C'est un raccourci de FunctionTools, donc vous pouvez vous en souvenir de cette façon.Cette fonction Partial nous permet de créer des fonctions à partir d'une fonction existante en lui passant des arguments prédéfinis.
00:00:30 :Pour vous montrer un exemple avec quelque chose de simple, on a une fonction, ici, Exponent, qui nous permet, à partir d'un nombre de bases, de le mettre à la puissance,avec le double astérisque ici. Par exemple, on pourrait faire 2 puissance 2, ça nous donnerait 4, 2 puissance 4, ça nous donnerait 16, etc.
00:00:45 :Vous comprenez le principe.Ce qu'on peut faire à partir de cette fonction et à partir de Partial, c'est créer d'autres fonctions.Par exemple, une fonction Root, ici, et une fonction Square.
00:00:55 :C'est une fonction qui va être utilisée à partir d'Exponent avec, en argument, 2 puissance 1,5.On va faire, par exemple, 16 à la puissance 1,5, ça va nous donner la racine de 16, c'est-à-dire, dans ce cas-ci, 4.
00:01:09 :Et à l'inverse, on peut mettre quelque chose à la puissance 2, donc une mise au carré avec cette fonction Square.Là, ce qu'on fait, c'est qu'à Partial, on va lui passer cette même fonction Exponent, et cette fois, avec un argument de 2 pour la puissance.
00:01:21 :Je vais vous montrer avec deux autres exemples, avec 25 et 5.Je sauvegarde et je lance le script.Et là, on se retrouve bien avec la racine de 25, qui est 5, et 5 puissance 2, qui est bien égale à 25.
00:01:32 :Vous voyez qu'avec Partial, ça nous permet de créer une fonction, une nouvelle fonction, dans ce cas-ci, Root et Square,à partir d'une fonction de base, en passant un argument par défaut.
00:01:42 :Donc vous voyez, quand on appelle par la suite cette fonction, qu'on a juste besoin de lui passer un argument,donc ici 25, et ce 25, il va être passé automatiquement au premier paramètre de notre fonction, donc à base dans ce cas-ci,et le paramètre puissance ici, on lui envoie déjà quelque chose en argument, donc on n'a pas besoin de le renseigner.
00:02:00 :Pour l'instant, ça ne vous semble peut-être pas très utile, et j'ai décidé de vous montrer un autre cas de figuredans lequel on pourrait vouloir utiliser cette fonction Partial.
00:02:09 :Donc là, j'ai une fonction qui s'appelle Filter, qui est assez générique, puisqu'elle nous permet de filtrer une liste de fichiersen fonction d'une extension, donc on vérifie tout simplement dans une compréhension de listesi les fichiers se terminent avec l'extension que l'on passe en argument à cette fonction.
00:02:24 :J'ai donc une liste de fichiers ici, et vous voyez que là, on va récupérer les photos et les vidéos,et on utilise donc à chaque fois cette fonction Filter, une fois avec JPEG et une fois avec les MP4.
00:02:34 :Donc pour avoir quelque chose d'un peu plus explicite, et qu'on pourrait passer à des collègues sans qu'ils aient besoinde savoir l'extension en question, on pourrait créer par exemple une fonction que l'on va appeler Filter Music.
00:02:46 :On va donc utiliser Partial, on va passer notre fonction Filter, et ensuite on va dire que pour l'extension,on veut utiliser l'extension MP3. Comme ça, quelqu'un pourrait récupérer tous les fichiers musicaux,
00:02:57 :donc dans une variable musique par exemple, en utilisant directement cette nouvelle fonction Filter Music,et en passant uniquement la liste des fichiers sans avoir besoin de savoir l'extension.
00:03:07 :Et on a quelque chose d'un peu plus explicite ici également au niveau du nom de la fonction,puisqu'on n'a plus quelque chose de générique comme Filter, mais bien Filter Music cette fois-ci.
00:03:15 :Donc si je sauvegarde le script et que je le lance, on va voir ici qu'on a bien uniquement le fichier de type MP3.Et on pourrait faire donc la même chose avec une autre fonction par exemple ici, qui s'appellerait Filter Image,et là à la place de MP3, on pourrait mettre JPEG et l'utiliser de la même façon.
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.