Les fonctions

Introduction

Une fonction est un morceau de code Python défini par le mot clé def, et que l'on peut appeler.

Voici un premier exemple : une fonction nomé message et qui affiche un message de bienvenue :

>>> def message():
...     print("Bonjour, je suis la fonction message !")

Pour appeler une fonction il faut taper son nom suivi d'une paire de parenthèses :

>>> message()
Bonjour, je suis la fonction message !

Et la fonction peut être appelée autant de fois qu'on veut :

>>> message()
Bonjour, je suis la fonction message !
>>> message()
Bonjour, je suis la fonction message !
>>> message()
Bonjour, je suis la fonction message !
>>> message()
Bonjour, je suis la fonction message !

 

Passage de paramètres à une fonction

Lorsqu'on appelle une fonction il est possible de lui passer des valeurs, appelé des paramètres.

Par exemple la fonction message suivante attant un paramètre nomé nom afin d'afficher un message personalisé :

>>> def message(nom):
... print("Bonjour "+nom+", bienvenue dans Python")

Lors de l'appel de la fonction on précise la valeur du paramètre entre les paranthèse :

>>> message("Paul")
Bonjour Paul, bienvenue dans Python

Et si on appelle la fonction en lui passant un autre paramètre, elle affichera un autre message personnalisé :

>>> message("Amélie")
Bonjour Amélie, bienvenue dans Python

 

Il est possible de passer plusieurs paramètres à une fonction. Par exemple la fonction suivante attend 2 paramètres : un nom et un age. Elle affiche ensuite un message personnalisé utilisant le nom et l'age passé en paramètre (variables nom et age dans la fonction) :

>>> def afficher(nom,age):
... print("Bonjour "+nom+", tu as "+str(age)+" ans")

En appelant la fonction afficher() il faut lui passer 2 paramètre : un nom (de type chaîne de caractères) et un age (de type nombre entier) :

>>> afficher("Isabelle",17)
Bonjour Isabelle, tu as 17 ans

La même fonction peut afficher des mesages bien différents en fonction des paramètres qu'on lui passe lors de sont appel :

>>> afficher("Sébastien",23)
Bonjour Sébastien, tu as 23 ans

 

Valeur de retour d'une fonction

Une fonction peut renvoyer une valeur grâce au mot clé return.

Voici comme exemple une première fonction nommée double, qui attend en paramètre un nombre x, et qui renvoie en retour la valeur du paramètre x multiplié par 2 :

>>> def double(x):
... return 2*x

La valeur de retour dépend donc de la valeur du paramètre passé :

>>> double(3)
6
>>> double(7)
14

La valeur de retour peut être simplement affichée :

>>> print(double(9))
18

Mais la valeur de retour de la fonction double peut servir pour faire des calculs :

>>> double(5)+double(8)
26

La fonction double est alors vue comme un nombre entier égal à sa valeur de retour :

>>> double(4)
8
>>> type(double(4))
<class 'int'>
>>> double(4)+1
9
>>> double(4)==8
True
>>> double(4)==13
False
>>> double(4)>7
True
>>> double(4)<3
False

 

Voici une seconde fonction nommée addition et qui attend cette fois 2 paramètres a et b. Elle renvoie ensuite la somme a+b :

>>> def addition(a,b):
... return a+b

Exemples d'utilisation de la fonction addition(a,b) :

>>> addition(7,3)
10
>>> addition(62,14)
76

Et la valeur de retour de la fonction addition(a,b) peut à son tour servir dans des calculs :

>>> addition(5,1)+addition(3,2)
11

Autre exemple :

>>> addition(3,addition(2,4))
9

Mais on peut aussi appeler :

>>> addition(addition(7,3),addition(2,8))
20

Etc. A vous de testez dans Python maintenant ...

 

A retenir :

Une fonction se définit par le mot clé def

Pour appeler une fonction on précise son nom suivi d'une paire de parenthèses

Une fonction peut recevoir des paramètres (à préciser entre les parathèses)

Une fonction peut renvoyer une valeur de retour grâce au mot clé return

Les fonctions permettent d'utiliser plusieurs fois le même code sans devoir le ré-écrire

 

 


 

 

Site Internet : python.gecif.net

Auteur : Jean-Christophe MICHEL

Professeur de Sciences Industrielles de l'Ingénieur
option Informatique et Numérique

Courriel : jc.michel@gecif.net