Appeler une fonction
Dans cette leçon tu vas modifier le code de l'éditeur pour créer ta première fonction.
Pour définir une fonction on utilise la syntaxe présentée dans l'éditeur. On commence toujours
par le mot clé def
qui indique à Python que ce qui suit définit une fonction.
def
pour créer une fonction.- 1
Après le mot-clé
def
il y a le nom de la fonction. Ici elle s'appellesomme
, mais tout nom de variable valide est possible.Tu vas modifier le code de la fonction
somme
au fil de cette leçon pour la transformer en une fonction qui calcule le périmètre d'un rectangle.
Pour commencer, double clique sur le motsomme
ligne 1 dans l'éditeur et remplace le parpérimètre
. N'oublie pas, l'éditeur est un traitement de texte donc tu peux directement cliquer, supprimer et remplacer le texte. Pour valider il faut exécuter le code.Solution
Pour modifier le nom de la fonction on remplace
somme
parpérimètre
def périmètre(a,b): return a+b
- 2
Juste après le nom de la fonction il y a toujours des parenthèses contenant les arguments. Ils sont séparés par une virgule.
La fonction
somme
avait deux arguments nommésa
etb
mais une fonction peut avoir autant d'arguments qu'on veut, cela dépend de la formule et du calcul à faire.On peut également nommer les arguments comme on veut : on aurait pu choisir
x
ety
par exemple.
Le périmètre d'un rectangle dépend de deux grandeurs : la largeur et la longueur du rectangle. Modifie le code de l'éditeur pour que la fonctionpérimètre
ait deux arguments nomméslargeur
etlongueur
au lieu dea
etb
Solution
Il faut conserver la virgule qui sépare les arguments
def périmètre(largeur, longueur): return a+b
- 3
Enfin, la définition d'une fonction finit toujours par deux points et un retour à la ligne. Cela fait partie de la syntaxe.
La ligne contenant le mot-clé
def
, le nom et les arguments de la fonction s'appelle l'en-tête de la fonction. Les lignes suivantes, après les deux points forment le corps de la fonction.On observe deux choses dans le corps de la fonction :
- D'une part le code est décalé vers la droite de plusieurs espaces. Cela s'appelle l'indentation.
- D'autre part il y a le mot clé
return
.
Je détaillerai ces deux points dans les leçons suivantes.
Il ne te reste plus qu'à modifier la formule juste après lereturn
. Supprime lea+b
et remplace le par une formule qui calcule le périmètre d'un rectangle à l'aide des argumentslargeur
etlongueur
.Solution
Il faut additionner deux fois la longueur et deux fois la largeur pour obtenir le périmètre d'un rectangle, donc par exemple :
def périmètre(largeur, longueur): return 2*(largeur + longueur)
- 4
Tu es maintenant en mesure d'utiliser la fonction
périmètre
pour faire des calculs.Par exemple pour calculer le périmètre d'un rectangle de largeur 3 et de longueur 5 il faut exécuter dans la console l'expression
périmètre(3,5)
. Observe que l'on a remplacé la variablelargueur
par le nombre 3 et la variablelongueur
par le nombre 5 pour faire le calcul.C'est exactement comme en mathématiques lorsque tu calcules par exemple l'image de 5 par une fonction , il faut calculer et donc remplacer par .
Utilise la fonctionpérimètre
dans la console pour déterminer le périmètre d'un rectangle de largeur 31 et de longueur 57Solution
Il faut remplacer l'argument
largeur
par 31 et l'argumentlongueur
par 57>>> périmètre(31, 57) 176
- 5
Dans la console, appelle la fonction
périmètre
avec les argumentslargeur=13
etlongueur=14
Solution
Il faut remplacer l'argument
largeur
par 13 et l'argumentlongueur
par 14>>> périmètre(13, 14) 54