在Python中,将函数作为参数传递
- 论坛
- 在Python中,将函数作为参数传递
18 浏览
在Python中,将函数作为参数传递
假设我想计算下面的表达式 f(f(...f(x)..)
,即对自身进行多次函数运算。
目前我通过以下方式来实现这个结果(并返回所有中间步骤):
def iterator(function, x, n=4): x = float(x) arr = [] for i in range(n + 1): arr.append(x) x = function(x) return arr def funcM(x): return x / 4 + 12
然后我将我的函数 funcM
作为参数传递:
print iterator(funcM, 100, 5)
。
这种方法没有问题,计算是正确的。
但是有没有办法在不定义函数 funcM
的情况下完成相同的操作呢?
也许可以将lambda函数作为参数传递给迭代器函数(如果这没有意义,我真的不知道lambda函数是什么)。