Callback funkcije v Pythonu
V Pythonu obstaja možnost posredovanja funkcij v parametre drugih funkcij. Pri tem se funkcije posredujejo kot spremenljivke (brez okroglih oklepajev) in imenujejo callbacki. Takšne callback funkcije se bodo izvajale v telesu glavne funkcije.
Recimo, da imamo funkcijo test,
ki kot parameter sprejme število in
funkcijo:
def test(num, func):
pass
Zdaj ustvarimo funkcijo func,
ki bo število dvignila na kvadrat:
def func(num):
return num ** 2
Zdaj se vrnimo k test in v
njeno telo dopišimo kodo, tako da
posredovana funkcija-callback kot parameter
sprejme število. Kot rezultat bo
test delovanje druge
funkcije, število za katero bo vzeto
iz prvega parametra test:
def test(num, func):
print(func(num))
Nato pokličemo funkcijo test in
ji posredujemo prvi parameter 3, in
drugi - func:
test(3, func) # izpiše 9
Kakšen bo rezultat izvajanja naslednje kode:
def get_Info(txt, func):
print(func(txt))
def func(name):
return 'user name is ' + name
get_Info('john', func)