Funkce jako proměnná v Pythonu

V Pythonu je funkce ve své podstatě proměnnou. A to znamená, že ji lze také předávat.

Mějme funkci, která vrací vykřičník:

pythondef func():
  return '!'

Předáme do print jméno funkce bez kulatých závorek jako proměnnou:

pythonprint(func)

Po provedení kódu se do konzole vypíše speciální objekt obsahující informace o této funkci:

python<function func at 0x0000022816383E20>

Nyní deklarujme proměnnou func2, do jejíž hodnoty předáme funkci func1. Samotná funkce bude předána ne hodnotou, ale odkazem jako objekt. A při volání func2 s kulatými závorkami se do konzole vypíše výsledek práce func1:

pythondef func1():
print('!')

func2 = func1
func2() # vypíše '!'
Задание 1

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

pythondef func():
  print('hello, user!')

greet = func
print(greet)
Задание 2

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

pythondef getSum(num1, num2):
  res = num1 + num2
  return res

func = getSum
print(func(2, 3))