Les Fonctions en Python

Les fonctions sont des blocs de code reutilisables ! Plutot que de recopier le meme code 10 fois, cree une fonction et appelle-la quand tu en as besoin !

Difficulte:
40 min
+40 XP

Objectifs du cours

  • Comprendre l'interet des fonctions
  • Creer une fonction avec def
  • Utiliser des parametres et arguments
  • Retourner des valeurs avec return
  • Comprendre la portee des variables (locale/globale)

Erreurs courantes a eviter

  • Oublier les parentheses () lors de l'appel
  • Confondre print() et return
  • Oublier les deux-points : apres def
  • Appeler une fonction avant de la definir

**Pourquoi utiliser des fonctions ?**

1. **Eviter la repetition** : Ecrire le code une fois, l'utiliser plusieurs fois 2. **Organiser le code** : Decouper en petits morceaux logiques 3. **Faciliter les tests** : Tester chaque fonction separement 4. **Rendre le code lisible** : Des noms explicites pour chaque action

**Syntaxe de base :**

```python def nom_fonction(): # Code de la fonction instruction1 instruction2 ```

**Appeler une fonction :**

```python nom_fonction() # Les parentheses sont obligatoires ! ```

**Attention :** - Le nom suit les memes regles que les variables (snake_case) - Toujours mettre les deux-points : apres les parentheses - Le code de la fonction doit etre indente

Python
# Ma premiere fonction
def dire_bonjour():
    print("Bonjour !")
    print("Bienvenue dans le monde des fonctions !")

# Appel de la fonction
print("=== PREMIERE FONCTION ===")
dire_bonjour()
dire_bonjour()  # On peut l'appeler plusieurs fois !

# Fonction avec plusieurs lignes
def afficher_menu():
    print("\n=== MENU ===")
    print("1. Jouer")
    print("2. Options")
    print("3. Quitter")
    print("============")

afficher_menu()

# Fonction de separation visuelle
def ligne():
    print("-" * 40)

ligne()
print("Contenu important")
ligne()

Quiz de validation

1. Quel mot-cle permet de creer une fonction ?

2. Que retourne une fonction sans instruction return ?

3. Quelle est la difference entre print() et return ?

4. Qu'est-ce qu'une variable locale ?

5. Comment appeler la fonction saluer avec l'argument 'Alice' ?

Pixel