具有多个参数的 Python 函数

我遇到了这个 Codewars 问题:

您的任务是编写一个高阶函数来将一元函数列表链接在一起。换句话说,它应该返回一个对给定函数进行左折叠的函数。

chained([a,b,c,d])(input)

应该产生相同的结果

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

我并不关心问题的答案是什么,我可以在网站上访问它。我实际上需要向我解释的是第一个功能,“链接”。我从来没有见过这样的函数,在单独的括号中包含两组参数,所以我想我错误地解释了它......这是什么意思?谢谢您的帮助


LEATH
浏览 112回答 2
2回答

饮歌长啸

它不是一个具有两组参数的函数,而是一个返回另一个函数的函数,依次执行作为参数给出的函数。如果将该行分成两行,可能会更清楚:f = chained([a,b,c,d]) # call `chained` with functions as parameters f(input)               # call result of `chained`, which is another function

婷婷同学_

正如问题中所述,chained是一个高阶函数- 它将采用一个参数 - 函数列表,并将返回/产生一个函数。通过传递一个参数(在本例中是另一个函数)来调用该函数input。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python