Aller au contenu principal

Le site sera en maintenance le 19/04/2026 entre 09h30 et 12h00.

Aller au contenu principal

Portée des variables (Scope)

Formation complète Python de zéro à héros
2 min de lecture
0 commentaires
Gratuit

C'est une erreur classique de débutant. Une variable créée DANS une fonction n'existe PAS en dehors. Elle est locale.

def ma_fonction():
    secret = 42 # Variable locale
    print(secret)

ma_fonction() # Affiche 42
# print(secret) -> ERREUR ! "name 'secret' is not defined"

Global

À l'inverse, une fonction peut LIRE une variable globale (définie dehors), mais pas la modifier directement (sauf avec le mot-clé global, mais c'est mal vu).

score = 0

def gagner():
    # score = 10 -> Crée une NOUVELLE variable locale score, ne touche pas au score global
    global score # Dit à Python qu'on parle du score global
    score = 10

Conseil d'ami : Évite global. Passe les valeurs en arguments et récupère-les avec return. C'est plus propre.

Commentaires (0)

Laisser un commentaire

Aucun commentaire pour le moment. Soyez le premier à commenter !