Leçon 5 / 10
Leçon 05 · Partie 1 — Les bases

Fonctions — def et return

Pourquoi créer des fonctions ?

Imagine que tu dois calculer la moyenne de 5 élèves, puis de 10 autres. Tu n'as pas envie de réécrire le même calcul deux fois.

Une fonction, c'est un bloc de code réutilisable auquel tu donnes un nom. Tu l'écris une fois, tu l'appelles autant de fois que tu veux.

Créer une fonction avec def

Python
# Définir une fonction
def dire_bonjour():
    print("Bonjour tout le monde !")

# Appeler la fonction
dire_bonjour()   # Bonjour tout le monde !
dire_bonjour()   # Bonjour tout le monde !
💡

Le mot-clé def définit une fonction. Il est suivi du nom de la fonction, de parenthèses (), et d'un deux-points :. Le corps de la fonction est indenté.

Fonctions avec paramètres

On peut passer des informations à une fonction via ses paramètres :

Python
def dire_bonjour(prenom):
    print(f"Bonjour, {prenom} !")

dire_bonjour("Emma")   # Bonjour, Emma !
dire_bonjour("Lucas")  # Bonjour, Lucas !

# Plusieurs paramètres
def additionner(a, b):
    print(a + b)

additionner(3, 7)   # 10

Retourner un résultat avec return

Parfois, tu veux que ta fonction calcule quelque chose et te le rende, plutôt que de l'afficher directement. C'est le rôle de return.

Python
def calculer_moyenne(notes):
    total = sum(notes)
    moyenne = total / len(notes)
    return moyenne

# On stocke le résultat dans une variable
notes_emma = [14, 16, 12, 18]
ma_moyenne = calculer_moyenne(notes_emma)
print(f"Moyenne : {ma_moyenne}")   # Moyenne : 15.0

return arrête la fonction et renvoie la valeur. Tout code après return dans la même fonction est ignoré. Une fonction sans return retourne None (rien).

Paramètres avec valeur par défaut

Python
def saluer(prenom, message="Bienvenue"):
    print(f"{message}, {prenom} !")

saluer("Marie")                    # Bienvenue, Marie !
saluer("Pierre", "Bonjour")       # Bonjour, Pierre !

Pourquoi c'est important ?

Les fonctions, c'est le cœur de la programmation bien organisée. Un bon programme, c'est une collection de petites fonctions claires, chacune faisant une seule chose.

Tu peux lire chaque fonction indépendamment et comprendre ce qu'elle fait. Si quelque chose ne marche pas, tu sais où chercher.

Python
# Exemple : mini-calculatrice
def additionner(a, b):
    return a + b

def multiplier(a, b):
    return a * b

def afficher_resultat(operation, resultat):
    print(f"{operation} = {resultat}")

afficher_resultat("3 + 4", additionner(3, 4))   # 3 + 4 = 7
afficher_resultat("5 × 6", multiplier(5, 6)) # 5 × 6 = 30
// À retenir
  • def nom_fonction(params): crée une fonction.
  • Les paramètres sont des variables locales à la fonction.
  • return valeur renvoie un résultat et arrête la fonction.
  • On appelle une fonction avec son nom suivi de parenthèses : ma_fonction().
  • Une fonction bien nommée se comprend sans lire son code.