+-

参见英文答案 > Python Argument Binders 6个
我有许多具有位置和关键字参数组合的函数,我想将它们的一个参数绑定到给定值(仅在函数定义之后才知道).有一般的方法吗?
我有许多具有位置和关键字参数组合的函数,我想将它们的一个参数绑定到给定值(仅在函数定义之后才知道).有一般的方法吗?
我的第一次尝试是:
def f(a,b,c): print a,b,c
def _bind(f, a): return lambda b,c: f(a,b,c)
bound_f = bind(f, 1)
但是,为此,我需要知道传递给f的确切args,并且不能使用单个函数来绑定我感兴趣的所有函数(因为它们具有不同的参数列表).
最佳答案
>>> from functools import partial
>>> def f(a, b, c):
... print a, b, c
...
>>> bound_f = partial(f, 1)
>>> bound_f(2, 3)
1 2 3
点击查看更多相关文章
转载注明原文:如何在Python函数中将参数绑定到给定值? - 乐贴网