Python 多参数函数
Python function with multiple arguments
我遇到了这个 Codewars 问题:
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))))
我真的不在乎问题的答案是什么,我可以在站点上访问它。我真正需要向我解释的是第一个功能,“链接”。我从来没有见过像这样的函数,在单独的括号中有 2 组参数,所以我想我对它的解释不正确……这是什么意思?感谢帮助
不是有两组参数的函数,而是returns 另一个函数,一个接一个执行作为参数给定的函数。
也许把一行分成两行会更清楚:
f = chained([a,b,c,d]) # call `chained` with functions as parameters
f(input) # call result of `chained`, which is another function
如问题中所述,chained
是一个 higher order function - 它需要一个参数 - 函数列表,并且 return/yield 是一个函数。通过传递一个参数调用该函数 - 另一个函数,在本例中为 input
.
我遇到了这个 Codewars 问题:
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))))
我真的不在乎问题的答案是什么,我可以在站点上访问它。我真正需要向我解释的是第一个功能,“链接”。我从来没有见过像这样的函数,在单独的括号中有 2 组参数,所以我想我对它的解释不正确……这是什么意思?感谢帮助
不是有两组参数的函数,而是returns 另一个函数,一个接一个执行作为参数给定的函数。
也许把一行分成两行会更清楚:
f = chained([a,b,c,d]) # call `chained` with functions as parameters
f(input) # call result of `chained`, which is another function
如问题中所述,chained
是一个 higher order function - 它需要一个参数 - 函数列表,并且 return/yield 是一个函数。通过传递一个参数调用该函数 - 另一个函数,在本例中为 input
.