Funzioni di callback in Python

In Python è possibile passare funzioni come parametri di altre funzioni. In questo caso, le funzioni vengono passate come variabili (senza parentesi tonde) e sono chiamate callback. Queste funzioni di callback verranno eseguite nel corpo della funzione principale.

Supponiamo di avere una funzione test, che accetta come parametri un numero e una funzione:

pythondef test(num, func):
  pass

Ora creiamo una funzione func, che eleva un numero al quadrato:

pythondef func(num):
  return num ** 2

Ora torniamo a test e aggiungiamo codice nel suo corpo in modo che la funzione di callback passata come parametro accetti anche essa un numero come parametro. Alla fine, il risultato di test sarà l'esecuzione di un'altra funzione, il cui numero sarà preso dal primo parametro di test:

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

Successivamente, chiamiamo la funzione test e le passiamo come primo parametro 3, e come secondo - func:

pythontest(3, func) # stampa 9
Задание 1

Quale sarà il risultato della seguente esecuzione del codice:

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