Les fonctions
A quoi sert une fonction ?
Important à comprendre
Une fonction, c’est un bout de programme réutilisable.
Par exemple, tu as écrit un programme qui permet de calculer la moyenne de plusieurs notes. Plutôt que de le réécrire à chaque fois que tu en as besoin, tu vas le mettre dans une fonction et c’est la fonction que tu utiliseras ensuite.
Créer une fonction et l’utiliser
# création de la fonction
def calculMoyenne(fnote1,fnote2,fnote3) :
resultat=(fnote1+fnote2+fnote3)/3
return resultat
note1=int(note1)
note2=int(note2)
note3=int(note3)
# calcul de la moyenne en utilisant la fonction
moyenne=calculMoyenne(note1,note2,note3)
# affichage du résultat
print("La moyenne de ces 3 notes est %f" % moyenne)
Comprendre le programme
-
On a créé une fonction qui calcule la moyenne de 3 notes. Cette fonction renvoie le résultat avec l’instruction return.
-
Cette fonction se définit avec le mot-clef def et possède 3 parties :
- un nom (calculMoyenne)
- des paramètres (fnote1, fnote2, fnote3) : ce sont les variables qu’il faut impérativement fournir à la fonction pour qu'ici, par exemple, elle puisse faire le calcul.
Dans notre exemple, les variables commencent par f_ (f pour fonction). Cette notation va nous aider à comprendre un point important plus loin (variables locales ou globales).
S’il n’y a pas de paramètres, on utilise les parenthèses vides.
- un corps : l’ensemble des instructions.
-
Ensuite, on a recopié dans le programme principal la demande à l’utilisateur des notes à saisir et la conversion en entier.
Pour calculer la moyenne, on fait appel à la fonction.
Variables locales et variables globales
Dans le programme précédent, expliquons la différence entre les variables f_note1 et note1.
-
fnote1 est une variable locale : elle est déclarée et n’est utilisée que dans la fonction. Si on essaie d’afficher/utiliser cette variable en dehors de la fonction, cela conduira à une erreur.
-
note1 est une variable globale : elle est déclarée en dehors des fonctions et peut être utilisée n’importe où dans le programme.
On parle de portée de la variable. Garde ce point en mémoire, tu y seras souvent confronté. Particulièrement quand tu veux modifier une variable globale dans une fonction.