这就是魔术:
filter_name = 'some_field_from_model'
filter_value = 'some_val'
Object.filter(**{filter_name: filter_value})
有效。但是它是如何工作的呢? **
是做什么的?我着迷,但我一点都不明白。有人可以解释这里发生了什么吗?非常感谢。 Python newb在这里。
答案 0 :(得分:2)
在函数调用中,在**
之前使用dict
将dict
拆包,就像使用命名参数一样。它与指针无关。
范例:function(**{"a":1, "b":42))
就像function(a=1, b=42)