Variable locale et globale | Python

Il existe deux types de variables: les variables globales et les variables locales.
 
 
Une variable globale peut être atteinte n’importe où dans le code, une variable locale uniquement à l’intérieur d’un bloc de code.
 


 
La variable globale (A) peut être atteinte et modifiée n’importe où dans le code, la variable locale (B) n’existe que dans le bloc 3.
 

Variables locales:

Les variables locales ne peuvent être atteintes que dans leur portée. L’exemple ci-dessous a deux variables locales: a et b.

def add(a, b):
    res = a + b
    return res

print(add(1,3))

Les variables a et b ne peuvent être utilisées qu’à l’intérieur de la fonction ‘add’, elles n’existent pas en dehors de la fonction.
Les variables locales ne peuvent pas être utilisées en dehors de leur portée, le code suivant ne fonctionnera pas:

def add(a,b):
    res = a + b
    return res

print(add(1,3))
print(a)

Il affiche l’erreur suivant:

NameError: name 'a' is not defined

 
 

Variables globales:

Une variable globale peut être utilisée n’importe où dans le code.
Dans l’exemple ci-dessous, nous définissons une variable globale b:

b = 5

def show():
    global b
    b = 10

show()
print(b)

Sortie:

10

La variable globale b peut être utilisée tout au long du programme, à l’intérieur des fonctions ou à l’extérieur. Une variable globale peut être modifiée à l’intérieur d’une fonction et changer pour l’ensemble du programme. Après l’appel de la fonction show(), la variable globale est modifiée pour l’ensemble du programme.
 

Exercice:

Déterminer la sortie de ce programme:

b = 10

def f1():
    global b
    b = 3

def f2(p,q):
    global b
    return p + q + b

f1()
res = f2(1,2)
print(res)
6

 

QCM PythonQCM Python – Partie 1Questions pratiques pour testez vos connaissances sur la programmation Python à savoir des structures conditionnelles, des opérations logiques, des boucles, des fonctions, etc. Testez votre…Lire plus

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *