Узаемадзеянне абласцей бачнасці ў Python

Бываюць выпадкі, калі знешняя (глабальная) і ўнутраная (лакальная) зменныя маюць адно і тое ж імя:

pythonnum = 1

def func():
  num = 2
  print(num)

Пры гэтым важна разумець, што лакальная num хоць і мае тое ж назву, што і глабальная, але для Python з'яўляецца іншай зменнай. Гэта значыць, што глабальная num НЕ перазапісваецца ўнутры функцыі, а захоўвае свой першапачатковы значэнне. Пры выкліку функцыі func у кансоль выведзецца значэнне толькі лакальнай num, а праз print - значэнне глабальнай зменнай:

pythonfunc() # выведзе 2
print(num) # выведзе 1
Задание 1

Якім будзе вынік выканання наступнага кода:

pythonnum = 10

def func():
  num = 5
  return num

func()
print(num)
Задание 2

Якім будзе вынік выканання наступнага кода:

pythonnum = 3

def func():
  num = 4
  return num

num = func()
print(num)
Задание 3

Якім будзе вынік выканання наступнага кода:

pythonnum = 1

def func():
  num = 2
  return 1

num = func()
print(num)
Задание 4

Якім будзе вынік выканання наступнага кода:

pythonnum1 = 1

def func():
  num2 = 2

func()
print(num1)
Задание 5

Якім будзе вынік выканання наступнага кода:

pythonnum1 = 1

def func():
  num2 = 2

func()
print(num2)
Задание 6

Якім будзе вынік выканання наступнага кода:

pythonnum1 = 1

def func():
  num2 = 2

func()
num2 = 3
print(num2)
Задание 7

Якім будзе вынік выканання наступнага кода:

pythonnum1 = 1
num2 = 2

def func():
  num2 = 3

func()
print(num2)
Задание 8

Якім будзе вынік выканання наступнага кода:

pythonnum1 = 1

def func():
  num1 = 2

print(num1)