Page 5
Fonctions
I. Définir une fonction
Une fonction est un algorithme qui prend des arguments en entrée, effectue une séquence d'instructions et
renvoie un résultat.
Exemple.
def TriangleRectangle(a,b,c):
if a*a==b*b+c*c or b*b==a*a+c*c or c*c==a*a+b*b:
return True
else:
return False
>>> TriangleRectangle( 2,5,12)
False
>>> TriangleRectangle(3,4,5)
True
>>> TriangleRectangle(4,12,100)
False
Cette fonction reçoit comme
arguments trois longueurs et
indique si elles peuvent
correspondre aux trois côtés
d’un triangle rectangle.
Remarques :
On appelle argument d’une fonction une variable particulière, utilisée dans le corps de la fonction, et dont la
valeur est donnée dans le programme principal au moment où la fonction est appelée.
De manière plus générale, la syntaxe pour définir une fonction est la suivante :
def NomDeLaFonction(argument1,argument2,...,argumentn):
<instructions>
On n'oubliera pas les : et l'indentation (retrait de texte) qui sont obligatoires en Python !
La définition d'une fonction
- Commence par le mot-clé def,
- Suivi du nom de la fonction,
- Et d'une liste entre parenthèses de paramètres ; cette première ligne se termine par des double-points :
- Les instructions qui forment le corps de la fonction commencent sur la ligne suivante, indentée.
- Dès que l'instruction return est exécutée, l'exécution de la fonction se termine.
II. Utilisation des fonctions dans un programme
L’approche efficace d’un problème complexe consiste souvent à le décomposer en plusieurs sous-problèmes
plus simples qui seront étudiés séparément.
Or il est important que cette décomposition soit représentée fidèlement dans les algorithmes pour que ceux-
ci restent clairs.
D’autre part, il arrivera souvent qu’une même séquence d’instructions doive être utilisée à plusieurs reprises
dans un programme, et on souhaitera bien évidemment ne pas avoir à la reproduire systématiquement.