You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python函数定义中将变量值作为关键字参数名使用

你可以通过Python的字典关键字解包语法实现动态传入参数名的需求,具体实现代码如下:

def _read(self, x):
    # 以x的实际值为键构造参数字典
    filter_params = {x: self.y}
    # 用**解包字典作为filter_by的关键字参数
    return self.query.filter_by(**filter_params)

如果需要更简洁的写法,也可以直接在调用时构造字典解包:

def _read(self, x):
    return self.query.filter_by(**{x: self.y})

原理解释

Python中的**语法可以将字典中的键值对拆解为函数的关键字参数,字典的键会被作为关键字参数的参数名,字典的值会作为对应参数的取值,刚好匹配你需要将参数x的实际值作为关键字参数名的需求。
举个实际调用的例子:当你调用_read(x="username")时,上述代码的执行效果等价于self.query.filter_by(username=self.y)。

内容的提问来源于stack exchange,提问作者user17507778

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 22:06:02