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:
def func():
return '!'
Předáme do print jméno funkce
bez kulatých závorek jako proměnnou:
print(func)
Po provedení kódu se do konzole vypíše speciální objekt obsahující informace o této funkci:
<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:
def func1():
print('!')
func2 = func1
func2() # vypíše '!'
Jaký bude výsledek provedení následujícího kódu:
def func():
print('hello, user!')
greet = func
print(greet)
Jaký bude výsledek provedení následujícího kódu:
def getSum(num1, num2):
res = num1 + num2
return res
func = getSum
print(func(2, 3))