Callback-funksjoner i Python
I Python er det mulig å sende funksjoner som parametre til andre funksjoner. I så fall overføres funksjonene som variabler (uten parenteser) og kalles callbacks. Slike callback-funksjoner vil bli utført i hovedfunksjonens kropp.
La oss si at vi har en funksjon test,
som tar et tall og en funksjon som parameter:
def test(num, func):
pass
La oss nå opprette en funksjon func,
som skal opphøye et tall i andre
potens:
def func(num):
return num ** 2
La oss nå gå tilbake til test og i
dens kropp skrive kode slik at den overførte
callback-funksjonen også tar et tall som parameter.
Resultatet blir at
resultatet av test vil være arbeidet til en annen
funksjon, der tallet vil bli hentet
fra den første parameteren i test:
def test(num, func):
print(func(num))
Deretter kaller vi funksjonen test og
sender den første parameteren 3, og
den andre - func:
test(3, func) # vil skrive ut 9
Hva blir resultatet av følgende kode:
def get_Info(txt, func):
print(func(txt))
def func(name):
return 'brukernavn er ' + name
get_Info('john', func)