Navodilo global v Pythonu

Recimo, da imamo zunanjo globalno spremenljivko i. Prav tako obstaja funkcija func, ki tej spremenljivki prišteje ena:

pythoni = 0
def func():
  i += 1 # izpisalo bo napako
  return i

Po izvedbi koda se bo vrnila napaka, ker pride do konflikta med globalno i, deklarirano v zunanji kodi, in lokalno i, ki ji je prišteto 1, vendar sama spremenljivka še ni deklarirana. Da to težavo popravimo in določimo, da funkcija deluje ravno z globalno spremenljivko, je treba uporabiti navodilo global. To navodilo predstavlja deklaracijo, ki se izvede za celoten trenutni blok kode, v katerem je določena.

Prepišimo prejšnji primer in v telesu funkcije deklarirajmo global:

pythondef func():
  global i
  i += 1
  return i
  
print(func()) # izpisalo bo 1
Задание 1

V naslednji kodi je nek programer naredil napako:

pythonnum = 4

def func():
  num *= 2
  return num

print(func())

Kaj je narobe s to kodo? Poiščite in popravite avtorjevo napako.

Задание 2

V naslednji kodi je nek programer naredil napako:

pythonnum = 10

def func():
  num -= 3
  return i

print(func())

Kaj je narobe s to kodo? Poiščite in popravite avtorjevo napako.