在 python 中,我有一个函数 f(x,y) 定义为
def f(x,y):
return x + y
现在我想为 y 的固定值定义一个函数 g(x) = f(x,y),该值在运行时确定。在我的特定情况下,我循环了多个 y 值,并且需要为每次迭代生成此函数 g(x):
for y in range(0,10):
def g(x):
return f(x,y)
#do something with g(x)...
上面的代码有效,但我的问题是是否有更有效的方法来做到这一点?在我看来,在每次循环迭代时创建一个函数对象在内存/计算时间方面可能会变得低效。
请您参考如下方法:
>>> def f(x, y):
return x * y
>>> from functools import partial
>>> g = partial(f, y=2)
>>> g(3)
6
