Callback funkcie v Pythone

V Pythone existuje možnosť odovzdávať funkcie ako parametre iných funkcií. Pri tom sa funkcie odovzdávajú ako premenné (bez okrúhlych zátvoriek) a nazývajú sa kolbéky. Takéto callback funkcie sa vykonajú v tele hlavnej funkcie.

Majme funkciu test, ktorá ako parameter prijíma číslo a funkciu:

pythondef test(num, func):
  pass

Teraz vytvorme funkciu func, ktorá bude umocňovať číslo na druhú:

pythondef func(num):
  return num ** 2

Teraz sa vráťme k test a do jej tela dopíšme kód tak, aby odovzdaná funkcia-callback ako parameter tiež prijímala číslo. Nakoniec to dopadne tak, že výsledkom test bude práca inej funkcie, pričom číslo pre ňu bude brané z prvého parametra test:

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

Ďalej voláme funkciu test a odovzdáme jej ako prvý parameter 3, a ako druhý - func:

pythontest(3, func) # vypíše 9
Задание 1

Aký bude výsledok vykonania nasledujúceho kódu:

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