Callback függvények Pythonban

A Pythonban lehetőség van függvények átadására más függvények paramétereiként. Ebben az esetben a függvények változókként (kerek zárójelek nélkül) adódnak át, és callback-eknek nevezik őket. Ezek a callback függvények a fő függvény testében futnak le.

Tegyük fel, hogy van egy test függvényünk, amely paraméterként egy számot és egy függvényt fogad:

pythondef test(num, func):
  pass

Most hozzunk létre egy func függvényt, amely egy számot a négyzetére emel:

pythondef func(num):
  return num ** 2

Most térjünk vissza a test függvényhez, és írjunk kódot a testébe úgy, hogy az átadott callback függvény paraméterként szintén egy számot fogadjon. Ennek eredményeképpen a test eredménye egy másik függvény munkája lesz, amelynek a száma a test első paraméteréből származik:

pythondef test(num, func):
  print(func(num))

Ezután meghívjuk a test függvényt, és átadjuk neki az első paraméterként a 3-at, másodikként pedig a func függvényt:

pythontest(3, func) # kiírja a 9-et
Задание 1

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

pythondef get_Info(txt, func):
  print(func(txt))
  
def func(name):
  return 'user name is ' + name
  
get_Info('john', func)