Introduction
Salut les codeurs en herbe ! Aujourd’hui, on va parler des fonctions en Python. C’est un peu comme les super-héros du code : elles ont des pouvoirs spéciaux et elles sont là pour vous sauver la mise quand vous avez besoin de réutiliser du code. Alors, enfilez votre cape de programmeur et c’est parti !
Définition d’une fonction
Une fonction, c’est comme une recette de cuisine. Vous mettez des ingrédients dedans (les paramètres), vous suivez les étapes (le code à l’intérieur), et à la fin, vous obtenez un plat délicieux (le résultat). Voici comment on crée une fonction en Python :
def ma_super_fonction(ingredient1, ingredient2):
# Ici, on fait notre mixture magique
resultat = ingredient1 + ingredient2
return resultat # On sert le plat !
# Et voilà comment on l'utilise :
plat_final = ma_super_fonction("pâtes ", "carbonara")
print(plat_final) # Ça affichera "pâtes carbonara"
Les paramètres
Les paramètres, c’est comme les trous dans une machine à bonbons. Vous pouvez mettre différentes choses dedans à chaque fois que vous utilisez la fonction. Il y a plusieurs façons de les utiliser :
Paramètres par défaut
def saluer(nom="tout le monde"):
print(f"Salut {nom} !")
saluer() # Affiche "Salut tout le monde !"
saluer("Alice") # Affiche "Salut Alice !"
Nombre variable de paramètres
def faire_sandwich(*ingredients):
print(f"Je fais un sandwich avec : {', '.join(ingredients)}")
faire_sandwich("jambon", "fromage")
faire_sandwich("beurre", "confiture", "banane")
Le retour des fonctions
Le return
, c’est comme le grand final d’un spectacle. C’est ce que votre fonction donne comme résultat après avoir fait son numéro :
def calculer_age_chien(age_humain):
return age_humain * 7
age_de_rex = calculer_age_chien(5)
print(f"Rex a {age_de_rex} ans en années de chien")
Les fonctions lambda
Les fonctions lambda, c’est comme des mini-fonctions ninja. Elles sont petites, rapides et efficaces :
multiplier = lambda x, y: x * y
resultat = multiplier(5, 3)
print(resultat) # Affiche 15
La portée des variables
Attention, les variables dans une fonction sont un peu timides. Elles restent généralement à l’intérieur de la fonction, comme des ermites dans leur grotte :
def ma_fonction():
x = 10
print(f"Dans la fonction : x = {x}")
ma_fonction()
# print(x) # Ça va provoquer une erreur, x est trop timide pour sortir !
Mais si vous voulez qu’une variable soit plus sociable, vous pouvez utiliser le mot-clé global
:
y = 5
def modifier_y():
global y
y = 10
print(f"Avant : y = {y}")
modifier_y()
print(f"Après : y = {y}")

Les fonctions récursives
Les fonctions récursives, c’est comme quand vous demandez à votre petit frère de demander à votre mère si vous pouvez avoir un biscuit. Et lui, il demande à votre mère de demander à votre père, et ainsi de suite… La fonction s’appelle elle-même :
def compte_a_rebours(n):
if n <= 0:
print("Décollage !")
else:
print(n)
compte_a_rebours(n - 1)
compte_a_rebours(5)
Conclusion
Et voilà, vous êtes maintenant des pros des fonctions en Python ! Avec ça, vous pouvez découper votre code en petits morceaux réutilisables, comme un puzzle géant. N’hésitez pas à créer plein de fonctions, c’est comme avoir une boîte à outils bien remplie pour construire vos programmes.
Liens internes :
Liens externes :
N’oubliez pas, la pratique fait le maître ! Alors amusez-vous à créer plein de fonctions différentes et à les combiner. C’est comme ça qu’on devient un vrai magicien du code !