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:

pythondef 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:

pythonprint(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:

python<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:

pythondef func1():
print('!')

func2 = func1
func2() # kiírja '!'
Задание 1

Mi lesz a következő kód végrehajtásának eredménye:

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

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

Mi lesz a következő kód végrehajtásának eredménye:

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

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