Instrucțiunea global în Python
Să presupunem că avem o variabilă globală externă
i. De asemenea, există o funcție
func care adaugă una la această
variabilă:
i = 0
def func():
i += 1 # va afișa o eroare
return i
După executarea codului, va returna o eroare,
deoarece există un conflict între variabila globală
i, declarată în codul extern, și
variabila locală i, căreia i se adaugă
1, dar variabila în sine nu este încă
declarată. Pentru a remedia această
problemă și a face funcția să lucreze chiar cu
variabila globală, trebuie să folosim
instrucțiunea global. Această instrucțiune
reprezintă o declarație care
se execută pentru întregul bloc de cod curent
în care este setată.
Să rescriem exemplul anterior, declarând
în corpul funcției global:
def func():
global i
i += 1
return i
print(func()) # va afișa 1
În următorul cod, un programator a făcut o greșeală:
num = 4
def func():
num *= 2
return num
print(func())
Ce nu este în regulă cu acest cod? Găsiți și corectați greșeala autorului codului.
În următorul cod, un programator a făcut o greșeală:
num = 10
def func():
num -= 3
return i
print(func())
Ce nu este în regulă cu acest cod? Găsiți și corectați greșeala autorului codului.