下記のようなネストが深い辞書型に追加処理をやりたいですのですが上手くいきません。
keyが重複していると上書きしてしまうのでしょうか...
よろしくお願いします。
###ソースコード
body = {"query": {"bool": {"should": [{"match":{}}]}}} year = "2019" date = "0101" body['query']['bool']['should'][0]['match']['year'] = year body['query']['bool']['should'][0]['match']['date'] = date print(body)
###実行結果
{"query": {"bool": {"should": [{"match": {"year": "2019", "date":"0101"}}]}}}
###ほしい結果
{"query": {"bool": {"should": [{"match": {"year": "2019",}},{"match": { "date":"0101"}}]}}}
###試したこと
#['should'][1]を指定してみた body['query']['bool']['should'][0]['match']['year'] = year body['query']['bool']['should'][1]['match']['date'] = date # エラー出力 body['query']['bool']['should'][1]['match']['date'] = date IndexError: list index out of range
###参考
most_fields
(would be executed as:)
https://www.elastic.co/guide/en/elasticsearch/reference/6.6/query-dsl-multi-match-query.html
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/03/20 00:02