How to understand the multiple parentheses after the python function?

Generally speaking, there is only one parenthesis after the function. If you see a parenthesis after the parentheses, it means that the first function returns a function. If there are parentheses, it means that the previous one also returns a function. And so on.

Such as fun()()

def fun():
    print("this is fun");
    def _fun():
        print("this is _fun");
    return _fun;

Your task is to write a higher order function for chaining together a
list of unary functions. In other words, it should return a function
that does a left fold on the given functions.
chained([a,b,c,d])(input)

Should yield the same result as

d(c(b(a(input))))

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def fun81(functions):
    def f(x):
        for fun in functions:
            x = fun(x);
        return x;
    return f;

Summary:
You can also chain-point functions in python, but the function needs to return a function.

Guess you like

Origin blog.csdn.net/sinat_38682860/article/details/109291081