Python 2.7.10Wie schreibe ich eine einfache Callback-Funktion?
Ich schrieb den folgenden Code eine einfache Callback-Funktion zu testen.
def callback(a, b):
print('Sum = {0}'.format(a+b))
def main(callback=None):
print('Add any two digits.')
if callback != None:
callback
main(callback(1, 2))
ich erhalten, als ich es ausführen:
Sum = 3
Add any two digits.
Warum Add any two digits
nach Sum = 3
ist? Ich denke, das liegt daran, dass die Callback-Funktion zuerst ausgeführt wird. Wie wird die Callback-Funktion ausgeführt, nachdem der gesamte Code in main()
ausgeführt wurde?
Gute Idee, die zwei Argumente vor dem Rückruf zu übergeben, damit der Dolmetscher etwas Arbeit für Sie erledigt! – erip
@erip Wie meinst du das? Wie deine Antwort? –
Ich meinte deins ist eine gute Idee. :) Das Erzwingen, dass der Benutzer die Argumente vor dem Rückruf übergibt, stellt sicher, dass sie existieren, damit kein Fehler auftritt, der 'main' aufruft. – erip