<p>我不完全确定我是否理解您正在尝试做的事情,但是我认为您需要的是一个字段列表,该列表被移动到新的\u过滤器字典中。在这种情况下,我将在新的过滤器dict中创建一个字段列表,并将对象附加到此列表中,因此您的输出将如下所示:</p>
<pre><code>{'fields': [{'descriptor': '~Manager~',
'id': 'edee9a85b3fb4cb69b993139fc123451',
'returnType': 'Text'},
{'descriptor': 'Candidate',
'id': 'edee9a85b3fb4cb69b993139fc141111',
'returnType': 'Text'},
{'descriptor': 'Description',
'id': 'edee9a85b3fb4cb69b993139fc14ce46',
'returnType': 'Text'}],
'id': 'any_id',
'operatorId': 'null',
'type': 'CONDITION'}
</code></pre>
<p>这可以通过以下方法实现:</p>
<pre><code>def _prepare_filters_json(self, pipeline: str, filter_to_add: dict):
new_filter = {"type": 'CONDITION', "id": 'any_id', "fields": [], "operatorId": 'null'}
source_fields = self.ssi_get_filter_source_fields(pipeline).json_path("$.data")
filters = self._get_filters(pipeline)
for source_field in source_fields:
for key in filter_to_add.keys():
if key == source_field["descriptor"]:
new_filter["fields"].append(source_field)
return self._prepare_json(pipelineId=pipeline, filter=filters)
</code></pre>