0% ont trouvé ce document utile (0 vote)
5 vues12 pages

2 - Fonctions en Python

Ce document présente les fonctions en Python, expliquant leur définition, utilisation, et avantages. Il aborde également les paramètres, arguments, ainsi que les différences entre les variables locales et globales. Des exercices pratiques sont fournis pour illustrer les concepts abordés.

Transféré par

alaeeddinerahmani2
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
5 vues12 pages

2 - Fonctions en Python

Ce document présente les fonctions en Python, expliquant leur définition, utilisation, et avantages. Il aborde également les paramètres, arguments, ainsi que les différences entre les variables locales et globales. Des exercices pratiques sont fournis pour illustrer les concepts abordés.

Transféré par

alaeeddinerahmani2
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Les fonctions en

Python

P r. M o h a m m e d E S . S A B R Y Année Universitaire:
[Link]@[Link] 2025 - 2026

Introduction aux fonctions

En programmation, une fonction est un bloc d’instructions qui permet


d’effectuer une tâche précise.

Une fonction :
est définie une seule fois
peut être utilisée plusieurs fois
permet de structurer un programme complexe

En Python, les fonctions jouent un rôle similaire aux fonctions


mathématiques :
elles prennent des entrées (paramètres)
elles produisent un résultat (valeur retournée)

Pr. Mohammed [Link]

1
Pourquoi utiliser des fonctions ?

Dans un programme, on répète souvent les mêmes calculs

x1 = 5
Cela rend le code :
y1 = x1 ** 2 + 3 * x1 + 1
long
print(y1)
difficile à modifier
source d’erreurs
x2 = 7
y2 = x2 ** 2 + 3 * x2 + 1
print(y2)

x3 = 10
y3 = x3 ** 2 + 3 * x3 + 1
print(y3)

P r. M o h a m m e d E S . S A B R Y

Solution : définir une fonction

On définit une fonction pour représenter le calcul


On l’utilise pour différentes valeurs

def f(x):
return x ** 2 + 3 * x + 1

print(f(5))
print(f(7))
print(f(10))

Avantages
Code plus clair
Réutilisable
Proche des mathématiques

P r. M o h a m m e d E S . S A B R Y

2
Définir une fonction en Python

En Python, une fonction est définie à l’aide du mot-clé :


def (définir)

La syntaxe générale est :

def nom_fonction():
instructions
instructions

def : mot-clé pour définir une fonction


nom_fonction : nom choisi par le programmeur
() : parenthèses obligatoires
: : début du bloc de la fonction

Le nom de la fonction doit être clair et significatif


Une fonction ne s’exécute pas automatiquement après sa définition
P r. M o h a m m e d E S . S A B R Y

Importance de l’indentation

En Python, l’indentation est obligatoire pour définir les blocs de code.

Toutes les instructions d’une fonction doivent être indentées.

def carre(x):
Exemple y = x ** 2
correct return y

def carre(x):
Exemple incorrect y = x ** 2
return y

L’indentation standard est de 4 espaces


Elle permet de structurer le programme

P r. M o h a m m e d E S . S A B R Y

3
Comment utiliser une fonction ?

Après avoir défini une fonction, il faut l’appeler pour l’exécuter.

Syntaxe : nom_fonction()

def carre(x):
return x ** 2
Exemple
print(carre(3))
print(carre(5))

Interprétation
carre(3) → calcule 32 = 9
carre(5) → calcule 52 = 25

P r. M o h a m m e d E S . S A B R Y

Les paramètres d’une fonction

Les paramètres permettent de passer des valeurs à une fonction.


Ils sont définis entre les parenthèses lors de la définition.

def carre(x):
return x ** 2
Exemple
Ici :
x est un paramètre

P r. M o h a m m e d E S . S A B R Y

4
Paramètres vs Arguments

Paramètre : variable dans la définition de la fonction


Argument : valeur réelle donnée lors de l’appel

def carre(x): # x = paramètre


return x ** 2
Exemple
print(carre(4)) # 4 = argument

À retenir
Paramètre = variable
Argument = valeur

P r. M o h a m m e d E S . S A B R Y

Fonctions avec plusieurs paramètres

Une fonction peut prendre plusieurs paramètres.

def polynome(x, a, b, c):


return a * x ** 2 + b * x + c
Exemple
print(polynome(2, 1, 3, 1))

Interprétation
𝑥 = 2, 𝑎 = 1, 𝑏 = 3, 𝑐 = 1
Résultat :
𝟏 × 𝟐𝟐 + 𝟑 × 𝟐 + 𝟏

P r. M o h a m m e d E S . S A B R Y

5
Respect du nombre d’arguments
Lors de l’appel d’une fonction, il faut respecter le nombre de paramètres définis.
Sinon, Python génère une erreur.

def somme(a, b):


return a + b
Exemple correct
print(somme(2, 3))

def somme(a, b):


return a + b
Exemple incorrect
print(somme(2))

Erreur : il manque un argument

Le nombre d’arguments doit être exactement le même que celui des paramètres

P r. M o h a m m e d E S . S A B R Y

Paramètres avec valeurs par défaut

On peut donner une valeur par défaut à un paramètre.


Si aucun argument n’est fourni, cette valeur est utilisée.

def puissance(x, n=2):


return x**n
Exemple
print(puissance(3)) # n = 2 par défaut
print(puissance(3, 3)) #n=3

Avantage
Rend les fonctions plus flexibles

Pr. Mohammed [Link]

6
Nombre variable d’arguments : *args

Parfois, on ne connaît pas à l’avance le nombre d’arguments.

Python permet d’utiliser *args


*args permet de passer plusieurs valeurs
Ces valeurs sont regroupées dans un tuple

def somme(*nombres):
total = 0
for n in nombres:
total += n
Exemple
return total

print(somme(1, 2))
print(somme(1, 2, 3, 4))

Pr. Mohammed [Link]

Arguments nommés variables : **kwargs

**kwargs permet de passer un nombre variable d’arguments nommés


Les données sont stockées dans un dictionnaire

def afficher_infos(**infos):
for cle, valeur in [Link]():
Exemple print(cle, ":", valeur)

afficher_infos(nom="Ali", age=20, niveau="S2")

Interprétation
infos devient :
{"nom": "Ali", "age": 20, "niveau": "S2"}

P r. M o h a m m e d E S . S A B R Y

7
Différence entre print et return
Il ne faut pas confondre :
print : affiche un résultat à l’écran
return : renvoie une valeur utilisable dans le programme
def f1(x):
print(x ** 2)

def f2(x):
return x ** 2
Exemple
a = f1(3)
b = f2(3)

print(a)
print(b)

P r. M o h a m m e d E S . S A B R Y

Variables locales
Une variable définie à l’intérieur d’une fonction est appelée :
variable locale
Elle existe uniquement dans la fonction
Elle n’est pas accessible à l’extérieur

def calcul():
x=5
return x ** 2
Exemple
print(calcul())
# print(x) → erreur

À retenir
Une variable locale est limitée à la fonction

P r. M o h a m m e d E S . S A B R Y

8
Variables globales

Une variable définie en dehors des fonctions est appelée :


variable globale
Elle est accessible dans tout le programme

x = 10

def afficher():
Exemple
print(x)

afficher()

P r. M o h a m m e d E S . S A B R Y

Mot-clé global

Pour modifier une variable globale dans une fonction, on utilise :


global
x = 10

def modifier():
global x
Exemple
x = 20

modifier()
print(x)
À retenir
Sans global, la modification ne fonctionne pas
À utiliser avec précaution

P r. M o h a m m e d E S . S A B R Y

9
Exercice 1 : Fonctions et calculs
mathématiques

Énoncé:
On considère une fonction mathématique définie par :
𝑓 𝑥 = 𝑥 2 + 2𝑥 + 1
1. Écrire une fonction f(x) qui calcule cette expression
2. Écrire une fonction tableau_f(a, b) qui affiche les valeurs de 𝑓(𝑥) pour tous les entiers
entre a et b

P r. M o h a m m e d E S . S A B R Y

Solution – Exercice 1

def f(x):
return x ** 2 + 2 * x + 1

def tableau_f(a, b):


for x in range(a, b + 1):
print("f(", x, ") =", f(x))

P r. M o h a m m e d E S . S A B R Y

10
Exercice 2 : *args, kwargs et logique

Énoncé:
On souhaite créer des fonctions flexibles pour manipuler des données.
1. Écrire une fonction produit(*nombres) qui calcule le produit de plusieurs nombres
2. Écrire une fonction maximum(*nombres) qui retourne la plus grande valeur
3. Écrire une fonction afficher_etudiant(**infos) qui affiche :
• Nom
• Age
• Moyenne

P r. M o h a m m e d E S . S A B R Y

Solution – Exercice 2

def produit(*nombres):
resultat = 1
for n in nombres:
resultat *= n
return resultat

print(produit(2, 3, 4)) # 24

def maximum(*nombres):
max_val = nombres[0]
for n in nombres:
if n > max_val:
max_val = n
return max_val

print(maximum(3, 7, 2, 9, 1))

P r. M o h a m m e d E S . S A B R Y

11
Solution – Exercice 2

def afficher_etudiant(**infos):
print("Nom :", infos["nom"])
print("Age :", infos["age"])
print("Moyenne :", infos["moyenne"])

afficher_etudiant(nom="Sara", age=19, moyenne=14.5)

P r. M o h a m m e d E S . S A B R Y

12

Vous aimerez peut-être aussi