Zio*_*fil 4 python functional-programming
我正在尝试执行以下操作:我想编写一个函数translate(f, c),该函数接受给定的函数f(例如,我们知道这f是单个变量的函数x)和一个常数,c并返回一个计算的新函数f(x+c)。
我知道在Python函数中是一流的对象,我可以将其f作为参数传递,但是我想不出一种方法也可以不传递x,这会破坏目的。
技巧是让translate返回一个函数实例。
def translate(f, c):
def func(x):
return f(x + c)
return func
Run Code Online (Sandbox Code Playgroud)
现在,变量x为“ free”,并且名称f和c来自封闭的作用域。
| 归档时间: |
|
| 查看次数: |
92 次 |
| 最近记录: |