Interakce oblastí viditelnosti v Pythonu

Nastávají situace, kdy vnější (globální) a vnitřní (lokální) proměnná mají stejný název:

pythonnum = 1

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

Je důležité si uvědomit, že lokální num i když má stejný název jako globální, je pro Python jinou proměnnou. To znamená, že globální num se uvnitř funkce NEPŘEPISUJE, ale zachovává svou původní hodnotu. Při volání funkce func se do konzoly vypíše hodnota pouze lokální num, a pomocí print - hodnota globální proměnné:

pythonfunc() # vypíše 2
print(num) # vypíše 1
Задание 1

Jaký bude výsledek provedení následujícího kódu:

pythonnum = 10

def func():
  num = 5
  return num

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

Jaký bude výsledek provedení následujícího kódu:

pythonnum = 3

def func():
  num = 4
  return num

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

Jaký bude výsledek provedení následujícího kódu:

pythonnum = 1

def func():
  num = 2
  return 1

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

Jaký bude výsledek provedení následujícího kódu:

pythonnum1 = 1

def func():
  num2 = 2

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

Jaký bude výsledek provedení následujícího kódu:

pythonnum1 = 1

def func():
  num2 = 2

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

Jaký bude výsledek provedení následujícího kódu:

pythonnum1 = 1

def func():
  num2 = 2

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

Jaký bude výsledek provedení následujícího kódu:

pythonnum1 = 1
num2 = 2

def func():
  num2 = 3

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

Jaký bude výsledek provedení následujícího kódu:

pythonnum1 = 1

def func():
  num1 = 2

print(num1)