Retour

Les fonctions en Python

🎲 Quiz GRATUIT

📝 Mini-cours GRATUIT

Introduction

Une fonction permet d’isoler plusieurs instructions qui reviennent plusieurs fois dans un programme.

Une fonction est définie par un nom, par ses arguments qui portent les valeurs communiquées par le programme principal à la fonction au moment de son appel et éventuellement une valeur de retour communiquée au programme par la fonction en fin d’exécution.

Isoler une série d'instruction

Certaines instructions reviennent plusieurs fois dans un même programme.

Un exemple de programme présentant des répétitions est le suivant :

Les lignes suivantes sont répétées 6 fois :

Au lieu de répéter ces trois lignes, on peut leur donner un nom, par exemple TirerUnTrait, puis les remplacer par ce nom dans le programme principal à chaque fois qu’elles sont utilisées.

On définit la fonction TirerUnTrait comme suit :

Et on utilise ensuite cette fonction dans le programme principal :

Utiliser des fonctions évite les répétitions dans les programmes et rend plus faciles à lire et à comprendre : pour comprendre le programme ci-dessus, il n’est pas nécessaire de savoir comment la fonction tirerUnTrait est définie, il suffit de savoir ce qu’elle fait. 

Si l’on veut modifier la longueur du trait à tirer ou le nombre de lignes sautées au-dessus et en-dessous de ce trait, il suffit de modifier le corps de la fonction et non le programme principal à chacun des endroits concernés.

Passer des arguments

Le programme précédent est formé de quatre blocs qui affiche le résultat de chaque match.

On peut écrire une fonction AfficherResultatMatch, qu’il suffirait d’appeler quatre fois dans le programme principal. 

Cependant, contrairement à l’exemple de la fonction tirerUnTrait, ces quatre blocs ne sont pas identiques : le nom de chaque joueur et le score du match diffèrent d’un cas à l’autre. 

Il faut donc paramétrer l’instruction que l’on isole pour indiquer le nom du premier joueur, le nom du deuxième joueur et le score du match.

La fonction correspondante est définie comme suit :

Et le programme principal devient :

Une fonction peut également retourner des informations vers le programme principal.

Ecrivons une fonction NombreDeVoyelles qui compte le nombre de voyelles dans un mot (ou une phrase) et retourne ce nombre de voyelles.

L’exécution de l’instruction return nbVoyelles a pour effet d’interrompre l’exécution du corps de la fonction et de renvoyer la valeur de la variable nbVoyelles au programme principal.

Exemple d'utilisation de cette fonction NombreDeVoyelles :

L'exécution de ce programme conduit à l'affichage :

Écrire les spécifications d'une fonction

En Python, les spécifications sont un commentaire multi-lignes, qu’on écrit entre des triples guillemets """. Il s’écrit juste après la ligne de définition de la fonction, et est indenté, comme s'il faisait partie du code source de la fonction. Voici un exemple de code avec une fonction sum_3_numbers spécifiée :

Exemple de fonction comportant ses spécifications :

def sum_numbers(number_1, number_2, number_3) :

   """

   Rôle : Additionner trois nombres

   Entrée : les trois nombres à additionner number_1 (int/float), number_2 (int/float), number_3 (int/float)

   Sortie : la somme des trois nombres (int/float)

   """

   result = number_1 + number_2 + number_3

   return result

 

📄 Annale PREMIUM

PREMIUM

Sujet zéro — Numérique et sciences informatiques

Nomad+, Le pass illimité vers la réussite 🔥

NOMAD EDUCATION

L’app unique pour réussir !