擅长:python、mysql、java
<p>@second的答案是正确的,使用<code>**</code>运算符解压缩字典以提供关键字参数。</p>
<p>但是,如果您只使用<em>和</em>来组合<code>Q</code>对象,而不使用<em>或</em>,那么您实际上不需要在示例中使用<code>Q</code>对象。只需构建一个查找字典,然后将其用作<code>filter</code>的关键字参数。</p>
<pre><code>options = {}
for key in ('apples', 'oranges', 'pears'):
value = request.GET.get(key)
if value:
options[key] = value
results = Orchard.objects.filter(**options)
</code></pre>