Инструкција global у Пајтону
Нека имамо спољну глобалну
променљиву i. Такође имамо функцију
func која додаје јединицу овој
променљивој:
i = 0
def func():
i += 1 # исписаће грешку
return i
Након извршавања кода вратиће се грешка,
јер долази до конфликта глобалне
i, декларисане у спољном коду, и
локалне i, којој се додаје
1, али сама променљива још није
декларисана. Да бисмо исправили овај
проблем и поставили функцију да ради управо са
глобалном променљивом, потребно је користити
инструкцију global. Ова инструкција
представља декларацију која
се извршава за читав тренутни блок кода,
у којем је постављена.
Хајде да препишемо претходни пример, декларисавши
у телу функције global:
def func():
global i
i += 1
return i
print(func()) # исписаће 1
У следећем коду неки програмер је направио грешку:
num = 4
def func():
num *= 2
return num
print(func())
Шта није у реду са овим кодом? Пронађите и исправите грешку аутора кода.
У следећем коду неки програмер је направио грешку:
num = 10
def func():
num -= 3
return i
print(func())
Шта није у реду са овим кодом? Пронађите и исправите грешку аутора кода.