Узаемадзеянне абласцей бачнасці ў Python
Бываюць выпадкі, калі знешняя (глабальная) і ўнутраная (лакальная) зменныя маюць адно і тое ж імя:
num = 1
def func():
num = 2
print(num)
Пры гэтым важна разумець, што лакальная num
хоць і мае тое ж назву, што і глабальная,
але для Python з'яўляецца іншай зменнай.
Гэта значыць, што глабальная num НЕ
перазапісваецца ўнутры функцыі, а захоўвае
свой першапачатковы значэнне. Пры выкліку
функцыі func у кансоль выведзецца
значэнне толькі лакальнай num, а
праз print - значэнне глабальнай
зменнай:
func() # выведзе 2
print(num) # выведзе 1
Якім будзе вынік выканання наступнага кода:
num = 10
def func():
num = 5
return num
func()
print(num)
Якім будзе вынік выканання наступнага кода:
num = 3
def func():
num = 4
return num
num = func()
print(num)
Якім будзе вынік выканання наступнага кода:
num = 1
def func():
num = 2
return 1
num = func()
print(num)
Якім будзе вынік выканання наступнага кода:
num1 = 1
def func():
num2 = 2
func()
print(num1)
Якім будзе вынік выканання наступнага кода:
num1 = 1
def func():
num2 = 2
func()
print(num2)
Якім будзе вынік выканання наступнага кода:
num1 = 1
def func():
num2 = 2
func()
num2 = 3
print(num2)
Якім будзе вынік выканання наступнага кода:
num1 = 1
num2 = 2
def func():
num2 = 3
func()
print(num2)
Якім будзе вынік выканання наступнага кода:
num1 = 1
def func():
num1 = 2
print(num1)