Funkcia ako premenná v Pythone
V Pythone je funkcia vo svojej podstate premennou. A to znamená, že ju možno aj odovzdávať.
Majme funkciu, ktorá vráti výkričník:
def func():
return '!'
Odovzdajme do print názov funkcie
bez okrúhlych zátvoriek ako premennú:
print(func)
Po vykonaní kódu sa do konzoly vypíše špeciálny objekt, ktorý obsahuje informácie o danej funkcii:
<function func at 0x0000022816383E20>
Teraz deklarujme premennú func2,
do ktorej hodnoty odovzdáme funkciu func1.
Samotná funkcia sa bude odovzdávať nie
hodnotou, ale odkazom ako objekt. A pri
volaní func2 s okrúhlymi zátvorkami sa
do konzoly vypíše výsledok práce func1:
def func1():
print('!')
func2 = func1
func2() # vypíše '!'
Aký bude výsledok vykonania nasledujúceho kódu:
def func():
print('hello, user!')
greet = func
print(greet)
Aký bude výsledok vykonania nasledujúceho kódu:
def getSum(num1, num2):
res = num1 + num2
return res
func = getSum
print(func(2, 3))