Python-дағы коллбэк функциялары

Python-да функцияларды басқа функциялардың параметрлері ретінде беру мүмкіндігі бар. Бұл жағдайда функциялар айнымалы ретінде (дөңгелек жақшасыз) беріледі және коллбэктер деп аталады. Осындай коллбэк функциялар негізгі функцияның денесінде орындалады.

Бізде test деп аталатын функция бар делік, ол параметр ретінде санды және функцияны қабылдайды:

pythondef test(num, func):
  pass

Енді func функциясын жасайық, ол санды квадрат дәрежеге шығарады:

pythondef func(num):
  return num ** 2

Енді test функциясына оралайық және оның денесіне параметр ретінде берілген коллбэк функциясы да параметр ретінде санды қабылдайтындай етіп код жазайық. Нәтижесінде, test функциясының нәтижесі басқа функцияның жұмысы болады, ол үшін сан test функциясының бірінші параметрінен алынады:

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

Әрі қарай, test функциясын шақырамыз және оған бірінші параметр ретінде 3 санын, ал екіншісі ретінде func функциясын береміз:

pythontest(3, func) # 9 шығарады
Задание 1

Мына кодты орындау нәтижесі қандай болады:

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