Függvény mint változó Pythonban
A Pythonban a függvény lényegében egy változó. És ez azt jelenti, hogy azt is tovább lehet adni.
Tegyük fel, hogy van egy függvényünk, amely visszaad egy felkiáltójelet:
def func():
return '!'
Adjuk át a print függvénynek a függvény
nevét zárójelek nélkül, mint változót:
print(func)
A kód végrehajtása után a konzolba egy speciális objektum íródik ki, amely információt tartalmaz az adott függvényről:
<function func at 0x0000022816383E20>
Most deklaráljunk egy func2 változót,
amelynek értékébe átadjuk a func1 függvényt.
Maga a függvény nem érték, hanem referencia
szerint kerül átadásra, mint objektum. És amikor
a func2 függvényt zárójelekkel meghívjuk,
a konzolba a func1 működésének eredménye
íródik ki:
def func1():
print('!')
func2 = func1
func2() # kiírja '!'
Mi lesz a következő kód végrehajtásának eredménye:
def func():
print('hello, user!')
greet = func
print(greet)
Mi lesz a következő kód végrehajtásának eredménye:
def getSum(num1, num2):
res = num1 + num2
return res
func = getSum
print(func(2, 3))