python - 如何将参数绑定(bind)到 Python 函数中的给定值?

标签 python

我有许多结合了位置参数和关键字参数的函数,我想将它们的一个参数绑定(bind)到给定值(只有在函数定义之后才知道)。有没有通用的方法?

我的第一次尝试是:

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 的确切参数,并且不能使用单个函数来绑定(bind)我感兴趣的所有函数(因为它们具有不同的参数列表)。

最佳答案

>>> 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 - 如何将参数绑定(bind)到 Python 函数中的给定值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3188048/

相关文章:

python - 使用 Heroku 设置 PYTHONPATH 和 PYTHONHOME

python - 实现自定义用户模型时 createsuperuser 出现问题

python - 关于 Pandas 移动平均线的问题

Python 在同一行中获取 Numpy 相等的结果

python - Python中的一个图形中的多个绘图

python - 如何在 conda environment.yml 文件中 pip 安装包?

python - 如何通过共享内存将 cv::Mat 发送到 python?

python - 如何在反向传播前直接设置一层的梯度?

Python 将返回值传递给函数

python - PyQt 中适合在桌面上创建 float 小部件的小部件是什么?