Aller au contenu principal

⚙️ Création de fonctions

Voici une fonction très simple :

def double(x):
return 2 * x
  • Première ligne : def double(x):
    • def est un mot-clé qui indique que nous sommes en train de définir une fonction.
    • double est le nom que nous avons décidé de donner à notre fonction.
    • Les parenthèses () indiquent que c'est une fonction, et peuvent contenir des paramètres (ici un seul : x).
    • x est un paramètre que nous avons décidé de nommer x et qui prend la valeur transmise lors de l'appel de la fonction.
    • Le : à la fin de la ligne indique que le corps (le code) de la fonction commence à la ligne suivante.
  • Toutes les lignes suivantes (ici seulement une ligne : return 2 * x)
    • Elles font partie du corps de la fonction, et sont indentées d'une tabulation (touche TAB) (espacement vers la droite).
      • En Python, l'indentation est essentielle pour délimiter les blocs de code.
    • return est un mot-clé qui indique quelle valeur la fonction renvoie, ici le résultat de l'évaluation de l'expression 2 * x.

Une fois qu'une fonction est ainsi définie, on peut l'appeler, en lui transmettant une valeur pour x :

def double(x):
return 2 * x

double(5) # Appel de la fonction en lui passant la valeur 5

Pour appeler une fonction, on écrit son nom suivi de parenthèses contenant les valeurs à transmettre aux paramètres.
Lorsqu'une fonction est appelée, le code à l'intérieur de la fonction est exécuté, et la valeur spécifiée par return est renvoyée à l'endroit où la fonction a été appelée.

Ici, la fonction double est appelée en lui passant la valeur 5, ce qui signifie que x reçoit la valeur 5 à l'intérieur de la fonction.
La fonction calcule 2 * 5 et retourne 10.

Cependant, ici, la valeur retournée par la fonction est perdue.
👉 La fonction fonctionne… mais le résultat disparaît si on ne le stocke pas.
Il pourrait être plus utile de stocker cette valeur dans une variable :

resultat = double(5)  # Appel de la fonction et stockage de la valeur retournée dans la variable 'resultat'

👉 Une fonction ne montre rien à l’écran : elle retourne une valeur que l'on peut ensuite utiliser.

Une fois une fonction définie, elle peut être appelée autant de fois que souhaité dans le code, en utilisant son nom suivi de parenthèses et des valeurs nécessaires :

resultat1 = double(5)  # Appel de la fonction avec la valeur 5
resultat2 = double(10) # Appel de la fonction avec la valeur 10
resultat3 = double(2) # Appel de la fonction avec la valeur 2

Après l'exécution de ces lignes, resultat1 contiendra 10, resultat2 contiendra 20 et resultat3 contiendra 4.

Pour passer des valeurs à une fonction, il est aussi possible d’utiliser des variables :

a = 5
resultat = double(a) # Appel de la fonction en lui passant la valeur contenue dans la variable 'a'

Ici, la variable a contient la valeur 5, et lorsque nous appelons double(a), la fonction reçoit la valeur de a (c’est-à-dire 5) et retourne 10.