Python-дағы коллбэк функциялары
Python-да функцияларды басқа функциялардың параметрлері ретінде беру мүмкіндігі бар. Бұл жағдайда функциялар айнымалы ретінде (дөңгелек жақшасыз) беріледі және коллбэктер деп аталады. Осындай коллбэк функциялар негізгі функцияның денесінде орындалады.
Бізде test деп аталатын функция бар делік,
ол параметр ретінде санды және функцияны қабылдайды:
def test(num, func):
pass
Енді func функциясын жасайық,
ол санды квадрат дәрежеге шығарады:
def func(num):
return num ** 2
Енді test функциясына оралайық және
оның денесіне параметр ретінде берілген коллбэк функциясы
да параметр ретінде санды қабылдайтындай етіп код жазайық.
Нәтижесінде, test функциясының нәтижесі басқа
функцияның жұмысы болады, ол үшін сан test
функциясының бірінші параметрінен алынады:
def test(num, func):
print(func(num))
Әрі қарай, test функциясын шақырамыз және
оған бірінші параметр ретінде 3 санын, ал
екіншісі ретінде func функциясын береміз:
test(3, func) # 9 шығарады
Мына кодты орындау нәтижесі қандай болады:
def get_Info(txt, func):
print(func(txt))
def func(name):
return 'user name is ' + name
get_Info('john', func)