Funktionsverkettung in Python

uf codewars.com bin ich auf folgende Aufgabe gestoßen:

Erstelle eine Funktionadd addiert Zahlen, wenn sie nacheinander aufgerufen werden. Soadd(1) sollte @ zurückgeb1, add(1)(2) sollte @ zurückgeb1+2, ...

Während ich mit den Grundlagen von Python vertraut bin, bin ich noch nie auf eine Funktion gestoßen, die in einer solchen Reihenfolge aufgerufen werden kann, d. H. Auf eine Funktionf(x) das kann als @ aufgerufen werdf(x)(y)(z).... Bisher weiß ich noch nicht einmal, wie ich diese Notation interpretieren soll.

ls Mathematiker würde ich vermuten, dassf(x)(y) ist eine Funktion, die jedem @ zugewiesen wix eine Funktiong_{x} und gibt dann @ zurüg_{x}(y) und ebenfalls fürf(x)(y)(z).

Sollte diese Interpretation korrekt sein, würde Python mir erlauben, dynamisch Funktionen zu erstellen, die mir sehr interessant erscheinen. Ich habe in der letzten Stunde im Internet gesucht, konnte aber keinen Hinweis in die richtige Richtung finden. Da ich nicht weiß, wie dieses Programmierkonzept heißt, ist das vielleicht nicht überraschend.

Wie nennt man dieses Konzept und wo kann ich mehr darüber lesen?

Antworten auf die Frage(10)

Ihre Antwort auf die Frage