Callback-Funktionen in Python

In Python besteht die Möglichkeit, Funktionen in Parameter anderer Funktionen zu übergeben. Dabei werden Funktionen wie Variablen übergeben (ohne runde Klammern) und werden Callbacks genannt. Solche Callback-Funktionen werden im Körper der Hauptfunktion ausgeführt.

Angenommen, wir haben eine Funktion test, die als Parameter eine Zahl und eine Funktion annimmt:

pythondef test(num, func):
  pass

Jetzt erstellen wir eine Funktion func, die eine Zahl quadriert:

pythondef func(num):
  return num ** 2

Kehren wir nun zu test zurück und ergänzen in ihrem Körper Code, sodass die als Parameter übergebene Callback-Funktion ebenfalls eine Zahl als Parameter annimmt. Am Ende wird sich herausstellen, dass das Ergebnis von test die Ausführung einer anderen Funktion ist, wobei die Zahl dafür aus dem ersten Parameter von test stammt:

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

Als nächstes rufen wir die Funktion test auf und übergeben ihr den ersten Parameter als 3 und den zweiten als func:

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

Was wird das Ergebnis der Ausführung des folgenden Codes sein:

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