Global инструкциясы Python-да
Бізде сыртқы глобальты
айнымалы i бар делік.
Сондай-ақ func функциясы бар,
ол бұл айнымалыға бірді қосады:
i = 0
def func():
i += 1 # қате шығарады
return i
Код орындалғаннан кейін қате қайтады,
себебі сыртқы кодта жарияланған глобальты
i және 1 қосылатын
жергілікті i арасында қайшылық пайда болады,
бірақ айнымалының өзі әлі жарияланбаған.
Бұл мәселені шешу және функцияның нақты
глобальты айнымалымен жұмыс істеуін орнату үшін,
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())
Бұл кодта не дұрыс емес? Код авторының қатесін тауып, түзетіңіз.