Python 函数调用示例([a,b,c,d])(输入)

Python function call example([a,b,c,d])(input)

我对 python 编程比较陌生,我在 codewarriors 中看到了这个代码片段。 有人可以解释一下这段代码吗...

def example(functions):
  #my_code
  return None

example([a,b,c,d])(input) #What kind of call is this?

这里a,b,c,d是定义好的函数。 我需要将 example 函数定义为 return 结果与 d(c(b(a(input))))

的结果相同

我只是熟悉example([1,2,3])(1) 这里传递的值是一个列表。但是如果它们是函数呢。

有什么好的资源也请评论,以便看清楚。

让我们看看foo(x)(y)通常意味着什么:

def foo(x):
    def bar(y):
        return x + y
    return bar

print(foo(2)(3)) #prints 5

这里第一个函数调用returns另一个函数,然后用它自己的参数调用,它也可以使用第一个函数的参数和局部变量。

在你的情况下,他们可能希望你写的是:

def example(functions)

    def f(input):
        for function in functions:
            input = function(input)
        return result

    return f

example(<functionlist>) returns 将 <functionlist> 中的所有函数应用于传递给第二个(返回的)函数调用的输入的第二个函数。