Python 按变量过滤';s值。.filter(**{filter\u name:filter\u value})是如何工作的?
所以这个魔术:Python 按变量过滤';s值。.filter(**{filter\u name:filter\u value})是如何工作的?,python,django,Python,Django,所以这个魔术: filter_name = 'some_field_from_model' filter_value = 'some_val' Object.filter(**{filter_name: filter_value}) 工作。但是它是如何工作的呢?**做什么?我很着迷,但我一点也不明白这一点。有人能解释一下这里发生了什么吗?谢谢。Python newb在这里。在函数调用中的dict之前使用**将dict解压,就像使用命名参数一样。它与指针没有任何关系。 例如:函数(**{“a”:
filter_name = 'some_field_from_model'
filter_value = 'some_val'
Object.filter(**{filter_name: filter_value})
工作。但是它是如何工作的呢?
**
做什么?我很着迷,但我一点也不明白这一点。有人能解释一下这里发生了什么吗?谢谢。Python newb在这里。在函数调用中的dict
之前使用**
将dict
解压,就像使用命名参数一样。它与指针没有任何关系。例如:
函数(**{“a”:1,“b”:42))
类似于函数(a=1,b=42)