On peut demander à une fonction de retourner une valeur.
Pour retourner une valeur, on utilise tout simplement le mot return, suivi de la valeur qu'on veut retourner.
Par exemple, on pourrait créer une fonction dont le seul objectif est de nous retourner le nombre 5.
defretourne_moi_cinq():return5
C'est un exemple très simple et qui ne sert pas à grand chose, mais qui vous montre le fonctionnement de ce mot clé return.
Pour récupérer la valeur retournée, on fait tout simplement une assignation qui nous permet de récupérer la valeur qui est retournée dans une variable.
a=retourne_moi_cinq()
Dans cet exemple, a sera donc égale à la valeur qu'on retourne dans notre fonction, donc au nombre 5.
Il faut savoir que l'instruction return a pour effet d'arrêter la fonction. Quand Python tombe sur cette instruction, il retourne la valeur et sort de la fonction.
defretourne_moi_cinq():return5print("La fonction est terminée")
Dans un cas comme celui-ci, on dit donc que la fonction print après le return est un code inatteignable. En effet, cette ligne de code ne peut en aucun cas être exécutée, car l'instruction return va arrêter la fonction avant qu'on arrive au print.
Si on regarde un exemple un peu plus concret, on pourrait avoir une fonction qui a pour but de tout simplement vérifier si un fichier existe. Si c'est le cas, on retourne un booléen True, et sinon on retourne False.
On conserve la structure conditionnelle qui vérifie si le fichier existe. Si c'est le cas, on retourne True, et ainsi la dernière ligne de la fonction qui retourne la valeur False ne sera pas exécutée. À l'inverse, si le fichier n'existe pas, on ne passe pas à l'intérieur de la structure conditionnelle, on retourne tout simplement le booléen False, et la fonction s'arrête ici.
Pour retourner une valeur, on utilise l'instruction return suivie de la valeur qu'on veut retourner. L'instruction return a pour effet d'arrêter l'exécution de la fonction.
Dans la prochaine partie, nous allons voir comment modifier le code qui se trouve à l'intérieur de notre fonction, grâce à l'ajout de paramètres.