Zusammenfassend ist die Rückruffunktion
Eine Rückruffunktion ist eine weitere Funktion, die beim Aufruf einer bestimmten Funktion in einem Computerprogramm als Argument übergeben wird. [Was ist eine Rückruffunktion](http://e-words.jp/w/%E3%82%B3%E3%83%BC%E3%83%AB%E3%83%90%E3%83%83] % E3% 82% AF% E9% 96% A2% E6% 95% B0.html)
Einfacher ausgedrückt ist es eine Funktion, die als Argument verwendet wird. Nein, verstehst du Irgendwie das. Wie benutzt man es? Lol
Schauen wir uns ein konkretes Beispiel an.
def callback_add(a, b):
print('{} + {} = {}'.format(a, b, a + b))
def callback_times(a, b):
print('{} × {} = {}'.format(a, b, a * b))
def handler(a, b, callback):
callback(a, b)
if __name__=='__main__':
handler(3, 5, callback_add)
handler(3, 5, callback_times)
3 + 5 = 8
3 × 5 = 15
Wobei * callback_add, callback_times * die Rückruffunktionen sind. Übrigens scheint die Funktion, die die Rückruffunktion aufruft, häufig als Handler bezeichnet zu werden. Der Vorteil der Rückruffunktion scheint zu sein, dass der Aufrufer der Funktion ** einen vorbestimmten Prozess passieren kann **.
Hmm ... ・ ・ ・ ** Es ist schwer zu verstehen, wie man es benutzt **. Wann wirst du es benutzen? !! !! !! !! !! !! Es macht mich verrückt sein wollen. Lol Gehen wir also noch einen Schritt weiter.
def f1():
name = 'Mike'
say_hello(name)
def say_hello(name):
print(name, 'Herr.,Hallo!')
def say_bye(name):
print(name, 'Herr.,Auf Wiedersehen!')
def f2():
name = 'Mike'
say_bye(name)
if __name__=='__main__':
f1()
f2()
Mike,Hallo!
Mike,Auf Wiedersehen!
Wenn Sie die Logik erstellen, dass say_hello in f1 ist, ohne die Rückruffunktion zu verwenden, müssen Sie erneut eine neue f2 erstellen, wenn Sie etwas anderes mit diesem Namen sagen möchten. Und je mehr Sie erhöhen, desto mehr f3, f4. Dies ist sehr unpraktisch. In einem solchen Fall verwenden Sie die Rückruffunktion.
def f1(callback):
name = 'Mike'
callback(name)
def say_hello(name):
print(name, 'Herr Hallo!')
def say_bye(name):
print(name, 'Auf Wiedersehen!')
if __name__=='__main__':
f1(say_hello)
f1(say_bye)
Das obige ist das gleiche Beispiel, jedoch mit der Rückruffunktion. Es ist wahnsinnig schön ... Egal wie stark Sie es erhöhen, es passt in f1 und Sie müssen nur die Funktion von say_〇〇 erhöhen. Wenn Sie noch nicht zur Sache gekommen sind, schauen Sie bitte auf das obere und untere Kabel. Und wenn Sie darüber nachdenken, während Sie es von Hand verfolgen, werden Sie verstehen.
Wenn Sie sich an die Rückruffunktion erinnern, wird der Funktionsumfang erheblich erweitert.
[Was ist eine Rückruffunktion](http://e-words.jp/w/%E3%82%B3%E3%83%BC%E3%83%AB%E3%83%90%E3%83%83] % E3% 82% AF% E9% 96% A2% E6% 95% B0.html) Vorteile der Rückruffunktion
Recommended Posts