Доираи маҳаллии дидабарии тағирёбандаҳо дар Python
Ҳамаи тағирёбандаҳое, ки дар дохили функсия ҷойгиранд, доираи дидабарии ба онҳо такя менамоянд, ки онро доираи маҳаллии дидабарӣ меноманд - онҳо фақат дар дохили функсияи худ дастрас буда, ва дар коди беруна бо онҳо кор кардан мумкин нест.
Бигзор мо функсияе дошта бошем, ки дар дохили он
тағирёбандаи num мавҷуд аст:
def func():
num = 2
return num
Биёед онро фаро бихонем ва кӯшиш кунем, ки
тағирёбандаи num-ро ба консоли чоп кунем. Пас аз
иҷрои код хатогии 'NameError' баргардонида мешавад,
зеро тағирёбанда дар коди беруна номаълум аст:
func()
print(num) # хатогии 'NameError' медиҳад
Натиҷаи иҷрои коди зерин чӣ хоҳад буд:
def func():
num = 1
func()
print(num)
Натиҷаи иҷрои коди зерин чӣ хоҳад буд:
def func():
num = 3
print(num)
func()
Натиҷаи иҷрои коди зерин чӣ хоҳад буд:
def func():
num = 5
return num
print(func())
Натиҷаи иҷрои коди зерин чӣ хоҳад буд:
def func():
num = 7
return num
func()
print(num)