Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Variable Globale | Portée des Variables
Techniques Python Intermédiaires
course content

Contenu du cours

Techniques Python Intermédiaires

Techniques Python Intermédiaires

1. Emballage et Déballage
2. Arguments dans les Fonctions
3. Fonction Comme Argument
4. Portée des Variables
5. Décorateurs

book
Variable Globale

Tous les objets ne sont pas accessibles partout dans un script. Portée - une partie du programme (code) où un objet ou une variable peut être accédé.

Une variable globale n'est pas déclarée à l'intérieur de fonctions ; elle réside dans la portée globale, qui est le corps principal du script. Cela signifie qu'une variable globale peut être accédée à l'intérieur et à l'extérieur de la fonction.

1234567
age = 20 def birthday_greet(): print(f"Happy B-Day! You are {age}! (local message)") birthday_greet() print("Global message", age)
copy

Cliquez sur le bouton ci-dessous le code pour vérifier la solution.

Assez facile, nous pouvons utiliser des variables globales dans les portées globales et locales (à l'intérieur de la fonction).

Maintenant, continuons à améliorer notre fonction birthday_greet(). Si c'est l'anniversaire de la personne, nous devons augmenter son âge de 1.

Nous ne pouvons pas changer la variable globale à l'intérieur de la fonction, alors essayons de passer la variable globale age comme argument :

12345678
age = 20 def birthday_greet(age): age += 1 print(f"Happy B-Day! You are {age}! (local message)") birthday_greet(age) print("Global message", age)
copy

Cliquez sur le bouton sous le code pour vérifier la solution.

Dans ce cas, la variable globale reste inchangée, et nous travaillons avec une variable locale nommée age.

L'exemple suivant montre que nous pouvons changer la variable globale dans une portée locale en utilisant le mot-clé global.

12345678910
age = 20 def birthday_greet(): global age # Added 'global' keyword age += 1 print(f"Happy B-Day! You are {age}! (local message)") birthday_greet() print("Global message", age)
copy

Cliquez sur le bouton sous le code pour vérifier la solution.

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 1
We're sorry to hear that something went wrong. What happened?
some-alt