Introduction aux Fonctions en Python pour la Data Science

Les Fonctions
Vidéo non disponible ! Réessayez plus tard
Cette vidéo fait partie de la formation
Maîtrisez Python : Analyse et visualisations des données
Revoir le teaser Je m'abonne
3,5
Transcription

Description Programme Avis
3,5

L'objectif est de familiariser les débutants avec la notion de fonction en Python, de leur enseigner à structurer et documenter ces fonctions, et ainsi à améliorer la lisibilité et la réutilisabilité de leur code.

Dans cette vidéo, découvrez comment définir et utiliser des fonctions en Python pour optimiser vos codes en Data Science.

La leçon présente les concepts fondamentaux des fonctions en Python dans le contexte de la Data Science. Les fonctions permettent de regrouper plusieurs instructions sous un même nom, facilitant ainsi leur réutilisation. La vidéo explique l'utilisation du mot-clé def pour définir une fonction, ainsi que la manière d'indentation pour structurer le code Python. Nous abordons aussi la documentation des fonctions avec des triple cotes pour créer des docstrings, et montrons comment utiliser la fonction help pour afficher cette documentation.

Un exemple pratique est donné où une fonction afficheProduit est créée pour afficher les caractéristiques d'un produit. Ce type de fonction permet de simplifier et de rendre plus lisible le code, surtout lorsque vous travaillez avec des listes de produits. Le cours souligne l'importance de la portée des variables à l'intérieur et à l'extérieur des fonctions, garantissant ainsi l'isolation et l'intégrité des données.

En conclusion, bien que l'utilisation extensive des fonctions ne soit pas toujours nécessaire pour l'analyse et la visualisation de données en Python, comprendre leur fonctionnement est essentiel pour écrire un code propre et efficace.

Voir plus
Questions réponses
Pourquoi utiliser des fonctions en Python ?
Les fonctions permettent de regrouper des blocs de code réutilisables et facilitent la maintenance et la lisibilité du code.
Comment définir une fonction en Python ?
Une fonction est définie à l'aide du mot-clé def suivi du nom de la fonction et de parenthèses. Les instructions de la fonction sont indentées.
Qu'est-ce qu'une docstring en Python ?
Une docstring est une chaîne de caractères utilisée pour documenter une fonction. Elle est délimitée par des triple cotes.
Dans cette première vidéo sur la partie les bases de Python pour la Data Science, alors je préfère rappeler que cette partie est plutôt pour les personnes qui n'ont jamais développé, si vous avez déjà fait du Python, vous pouvez passer à la partie suivante, où vous n'apprendrez pas grand chose d'utile. En tout cas, pour les personnes que ça concerne, un des grands intérêts d'un langage de programmation comme Python, ça va être la possibilité d'exécuter un très grand nombre d'opérations, très simples, très rapidement. L'informatique, c'est une technologie qui est au service des besoins des êtres humains, et c'est en ce sens qu'elle est utile, parce qu'elle permet de faire des choses très bêtes, très rapidement. Et dans ce contexte-là, la fonction, c'est la structure principale qui va permettre l'exécution d'une ou plusieurs opérations informatiques que l'être humain aura définies. Par exemple, imaginez que vous souhaitiez afficher sur votre écran les caractéristiques d'un produit de votre catalogue. Une première option avec les compétences que vous avez acquises jusque-là dans le cadre de ce cours, ce serait d'utiliser la fonction print et les variables en Python. On pourrait faire, par exemple, ce genre de code. Faites attention ici, c'est les numéros de lignes, on ne les écrit pas. C'est-à-dire que si je regarde ici, je n'écris pas 1. C'est le fait de pouvoir, une fois, vous spécifier de quel numéro de ligne ou de quelle ligne je parle par la suite. Donc, si on reprend ce code en Python, on va avoir le nom d'un produit, la couleur du produit, la taille du produit, le prix du produit, en ligne 4, du coup. Et puis après, on fait des prints. Jusque-là, rien de nouveau par rapport à ce que vous avez appris dans la partie précédente d'introduction de ce cours. Alors évidemment, si vous avez plusieurs produits, ce code fonctionne évidemment, mais si vous avez plusieurs produits, vous allez devoir écrire plusieurs fois ces instructions. Dans ce cas-là, l'informatique ne vous rend pas trop au service. Si on utilise cette notion de fonction, on va l'utiliser à l'aide du mot-clé def. On va définir une instruction plus globale qui va rassembler les opérations qu'on a décrites jusque-là. Donc, on va définir la fonction afficheProduit qui va accepter des paramètres. Ici, une variable nom, une variable couleur, une variable taille, une variable prix. Alors, une fonction peut accepter ou non des paramètres et peut accepter un nombre indéfini de paramètres. Donc ça, c'est intéressant de savoir que c'est vachement souple de ce côté. Ensuite, une fonction peut être documentée. Ici, c'est cet axe à triple cote qu'on avait découvert dans la partie précédente. Dans ce contexte, elle ne va pas être exécutée ou interprétée par Python. Elle va être mise de côté en tant que documentation de la fonction. Et un peu plus tard dans cette section, je reviendrai sur la façon d'afficher cette documentation de la fonction. Et ensuite, on retrouve finalement les instructions précédentes. Le produit s'appelle, le produit de couleur, disponible dans les tailles, au prix de. On reviendra sur cette fonction str. C'est ce que l'on appelle le casting et il y a de bonnes raisons de faire ça ici. Alors, si on reprend notre exercice avec, cette fois, le même produit. A ce moment-là, on peut utiliser la fonction afficher produit, prendre la variable nom produit que nous avions définie au-dessus, couleur produit, taille produit, prix produit. Ensuite, j'ai fait juste un print pour afficher une petite séparation. Et j'affiche maintenant un deuxième produit. Comme vous pouvez le voir, c'est beaucoup plus simple. Ça ne prend plus qu'une seule ligne. Et donc, ça prendrait, pour afficher une liste de produits, une ligne par produit. Ce qui est déjà beaucoup moins de code à écrire. Donc, en soi, la fonction nous a fait gagner plein de temps. Ici, le produit est une robe de soirée. Elle est bleue de nuit. Elle est disponible dans les tailles 36, 38, 40, 42, 44, 46. Et elle vaut 20 euros. Et donc, le rendu depuis temps est le suivant. Premier produit, chaussette polaire. Deuxième produit, robe de soirée. Alors, une fonction, elle a un nom, je rappelle. Ici, elle s'appelle afficher produit. Et elle se définit avec du mot clé DEF. Ce mot clé DEF, il est important. Il est important parce que toutes les opérations de la fonction vont être, comme vous pouvez le voir, décalées, on dit indentées, d'un bloc. C'est l'équivalent de 4 espaces, mais on utilisera plutôt le caractère TAB de votre clavier. Et donc, cette première ligne, qu'on appelle la définition de la fonction, d'où le mot clé DEF, se termine par un 2-point. Ce 2-point, c'est ce qui va terminer, finalement, la fin de la définition de la fonction. Une fois qu'on a bien défini la fonction, c'est-à-dire qu'on a défini son nom et ses propriétés, ici. Ensuite, on va, ce n'est pas obligatoire, décrire ce que fait la fonction. Ici, elle permet d'afficher la définition, ou plutôt la description complète des caractéristiques d'un produit. Ce qui est intéressant ici, c'est que toutes les fonctions qui ont défini une documentation, et on peut aller beaucoup plus loin que ce que je viens d'écrire, cette documentation va s'afficher à l'aide de la fonction HELP. Comme vous pouvez le voir ici, si on fait HELP affiché produit... Attends, il faut que je réexécute le code. J'exécute le blog affiché produit. Là, ma fonction a bien été exécutée par Python. Et du coup, quand je fais ici HELP produit, vous voyez, HELP sur la fonction affiché produit, affiché produit avec le nom des variables, accepté, nom, couleur, taille, prix. Alors, pas de nom des variables, non des paramètres. Car ici, ça s'appelle nom, couleur, taille et produit. Et vous vous êtes probablement rendu compte qu'ici, on a placé nom produit, couleur produit, taille produit, prix produit. Donc, il n'est pas obligatoire d'utiliser les mêmes noms de variables pour les paramètres de la fonction, et pour des variables qu'on utiliserait dans le cadre de notre programme. Ce sont juste des paramètres, un petit peu comme des fonctions mathématiques, avec x égale à 2, y égale à 3, z égale à 10. On a le même fonctionnement ici. Ce sont des paramètres d'une fonction. Et donc, cette fonction, vous voyez, permet d'afficher la description. Et donc, ici, on retrouve le blog de documentation que nous avions écrit en première ligne, du coup, de notre fonction. Je reviens un petit peu sur la notion d'espace et de tabulation. En effet, Python, c'est un langage qui utilise l'indentation, donc le fait de décaler les blocs pour définir l'ordre des opérations à exécuter. Alors, qu'est-ce que ça veut dire concrètement ? Ça veut dire qu'ici, pour une fonction, vous avez le def qui est défini là, et tout ce qui va correspondre au bloc de la fonction va être décalé d'une indentation. Alors, qu'est-ce qui se passe si vous ne le faites pas, ou si vous ne le faites mal ? Typiquement, vous avez oublié un espace, vous avez utilisé deux tabulations, puis une fois une, vous allez avoir ce genre de code, possiblement. Et là, vous aurez une erreur, alors une erreur qui est plutôt claire, une erreur d'indentation, avec une expected indent sur la ligne 5. Effectivement, quand on regarde ici le nombre de lignes, et ce n'est pas pour rien que je les ai affichées dans le cadre de cet exercice, c'est qu'on peut voir ici que la fonction a été définie jusqu'à la ligne 3, en ligne 4, on a l'appel d'une fonction print, donc on est en dehors de la fonction, puis on va réavoir un print qui est décalé, et là, Python ne comprend pas. Il ne comprend pas parce qu'on n'a aucune raison de faire rentrer un bloc print dans la fonction print, dans l'appel de la fonction print. Et donc, du coup, il dit à quelque chose qui est assez logique, il signale la ligne qui est pour lui du post-problème, bon, nous, on sait que c'est la ligne précédente qui est du post-problème au final, et il nous indique qu'il y a probablement une erreur d'indentation, et à priori, tu devrais mettre un tab. Ce qui lui semblerait plus logique, c'est ceci. Alors pour nous, fonctionnellement, ce ne serait pas le cas, puisqu'on n'aurait que le print du nom qui serait exécuté dans la fonction. Et regardez. NameColor is not defined. Alors pourquoi les variables ici ne sont pas définies ? Parce qu'au final, quand vous faites l'appel de la fonction, ici, les variables nom, couleur, taille et prix ne sont disponibles que dans la fonction, et elles n'existent pas en dehors. C'est un peu un scope, en fait. C'est ce que l'on appelle un scope. Donc on va avoir des variables qui sont disponibles à l'intérieur du bloc de la fonction, et on va avoir des variables qui sont disponibles en dehors. Et donc c'est une façon aussi de garantir l'intégrité de ce qui se passe à l'intérieur des fonctions. Ce sont vraiment des boîtes noires. On leur passe des paramètres, elles vont nous retourner un résultat, et ce qui se passe à l'intérieur, ça ne concerne que ce qui se passe à l'intérieur. Et c'est tout pour les fonctions. Dans la suite de ce cours, on ne va pas en créer énormément. Vous verrez que ce n'est pas un besoin indispensable pour faire de l'analyse et de la visualisation de données, puisqu'il y a énormément de librairies qui font le travail correctement. Par contre, on va beaucoup utiliser de fonctions, et j'espère que ces bases de fonctions vont vous permettre d'être un peu plus à l'aise avec ce qu'on va voir dans la suite.
4 commentaires
3,5
4 votes
5
4
3
2
1
elephorm-1464076@addviseo.com
Il y a 3 months
Commentaire
Bonne formation mais vraiment dommage de ne pas avoir au moins les liens des supports de cours.
nicolasmichaux1
Il y a 1 year
Commentaire
Bonnne formation mais aucun support de cours
lebris.gilles76
Il y a 2 years
Commentaire
Très bien , mais il manque les supports de cours
antoinem
Il y a 2 years
Commentaire
Bien mais il manque les supports de cours
Nos dernières formations Python
  • Pack 5 formations
    Pack Python : Des bases aux techniques avancées
    Découvrir
    Réputé pour être le langage de programmation le plus populaire au monde, Python est très plébiscité pour ses différentes utilisations.  A travers ce pack de 5 formations, vous apprenez les fondamentaux de la programmation Python, vous maîtrisez les techniques avancées et vous découvrez comment utiliser Python pour le web et pour l’analyse et la visualisation des données. Apprendre à programmer en Python : Apprendre les fondamentaux du langage de programmation Python. Apprendre Python : Qualité de code et maintenance : Maîtriser Python avec une qualité de code et de maintenance optimales. Maîtriser Python : Techniques avancées : Formez-vous aux différentes fonctionnalités avancées de python. Apprendre le web avec Python/ Django : Découvrez la programmation Web : Apprendre les principes fondamentaux de la programmation Web Maîtriser Python : Analyse et visualisations des données : Apprendre à utiliser Python pour l’analyse et la visualisation des données
    22h52 154 leçons
  • Apprendre Python   - Qualité de code et maintenance
    Découvrir
    Maîtriser Python avec une qualité de code et de maintenance optimales
    3h09 23 leçons
  • Maîtriser Python  - Techniques avancées
    Découvrir
  • Apprendre à programmer en Python
    Découvrir
    Apprendre les fondamentaux du langage de programmation Python
    6h33 60 leçons 4,75 / 5
  • Apprendre le Web avec Python/Django - Découvrez la programmation web
    Découvrir
    Apprendre les principes fondamentaux de la programmation Web
    4h38 32 leçons 3,50 / 5