Funksionet Callback në Python

Në Python ekziston mundësia për të kaluar funksione në parametrat e funksioneve të tjera. Në këtë rast funksionet kalohen si variabla (pa kllapa të rrumbullakëta) dhe quhen callback-e. Këto funksione-callback do të ekzekutohen në trupin e funksionit kryesor.

Le të themi se kemi funksionin test, i cili si parametër merr një numër dhe një funksion:

pythondef test(num, func):
  pass

Tani le të krijojmë një funksion func, i cili do ta ngrejë numrin në katror:

pythondef func(num):
  return num ** 2

Tani le të kthehemi te test dhe në trupin e tij të shtojmë kod, në mënyrë që funksioni-callback i kaluar si parametër të marrë edhe ai një numër si parametër. Si rezultat do të dalë se rezultati i test do të jetë puna e një funksioni tjetër, numri për të cilin do të merret nga parametri i parë i test:

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

Pastaj thërrasim funksionin test dhe i kalojmë atij si parametër të parë 3, dhe të dytin - func:

pythontest(3, func) # do të shfaqë 9
Задание 1

Cili do të jetë rezultati i ekzekutimit të kodit në vijim:

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